<SEC-DOCUMENT>0001437749-22-005979.txt : 20220311
<SEC-HEADER>0001437749-22-005979.hdr.sgml : 20220311
<ACCEPTANCE-DATETIME>20220311142357
ACCESSION NUMBER:		0001437749-22-005979
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		88
CONFORMED PERIOD OF REPORT:	20211231
FILED AS OF DATE:		20220311
DATE AS OF CHANGE:		20220311

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-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-15725
		FILM NUMBER:		22732577

	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-K
<SEQUENCE>1
<FILENAME>apt20211231_10k.htm
<DESCRIPTION>FORM 10-K
<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/2021" 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/2021" 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/2021q4" xmlns:apt="http://www.alphaprotech.com/20211231" xmlns:currency="http://xbrl.sec.gov/currency/2021" xmlns:sic="http://xbrl.sec.gov/sic/2021" xmlns:exch="http://xbrl.sec.gov/exch/2021" xmlns:rr="http://xbrl.sec.gov/rr/2018-01-31" xmlns:country="http://xbrl.sec.gov/country/2021" xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31" xmlns:srt="http://fasb.org/srt/2021-01-31" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21">
 <head>
  <title>apt20211231_10k.htm</title>
  <!-- Generated by ThunderDome Portal - 3/11/2022 5:12:25 AM -->
  <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_2021-01-01_2021-12-31" name="dei:EntityCentralIndexKey" id="thunderdome-EntityCentralIndexKey">0000884269</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="dei:EntityRegistrantName" id="thunderdome-EntityRegistrantName">ALPHA PRO TECH LTD</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="dei:AmendmentFlag" format="ixt:booleanfalse">false</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="dei:CurrentFiscalYearEndDate">--12-31</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="dei:DocumentFiscalPeriodFocus">FY</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="dei:DocumentFiscalYearFocus">2021</ix:nonNumeric>
<ix:nonFraction id="c81754396" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">64,000</ix:nonFraction>
<ix:nonFraction id="c81754397" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">71,000</ix:nonFraction>
<ix:nonFraction id="c81754437" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:CommitmentsAndContingencies" scale="0" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction id="c81754438" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:CommitmentsAndContingencies" scale="0" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction id="c81754442" contextRef="i_2021-12-31" unitRef="USDPerShare" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" format="ixt:numdotdecimal" decimals="INF">0.01</ix:nonFraction>
<ix:nonFraction id="c81754443" contextRef="i_2020-12-31" unitRef="USDPerShare" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" format="ixt:numdotdecimal" decimals="INF">0.01</ix:nonFraction>
<ix:nonFraction id="c81754444" contextRef="i_2021-12-31" unitRef="Share" name="us-gaap:CommonStockSharesAuthorized" scale="0" format="ixt:numdotdecimal" decimals="INF">50,000,000</ix:nonFraction>
<ix:nonFraction id="c81754445" contextRef="i_2020-12-31" unitRef="Share" name="us-gaap:CommonStockSharesAuthorized" scale="0" format="ixt:numdotdecimal" decimals="INF">50,000,000</ix:nonFraction>
<ix:nonFraction id="c81754446" contextRef="i_2021-12-31" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">13,115,341</ix:nonFraction>
<ix:nonFraction id="c81754447" contextRef="i_2020-12-31" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">13,419,847</ix:nonFraction>
<ix:nonFraction id="c81754655" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:AssetImpairmentCharges" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81754657" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:AssetImpairmentCharges" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81754670" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81754758" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:MarketableSecurities" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81754759" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:MarketableSecurities" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81754799" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:GoodwillImpairmentLoss" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81754800" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:GoodwillImpairmentLoss" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81754820" contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN" unitRef="Pure" name="us-gaap:NumberOfStores" scale="0" format="ixt:numdotdecimal" decimals="INF">4</ix:nonFraction>
<ix:nonFraction id="c81754821" contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN" unitRef="Pure" name="apt:NumberOfStoresOwned" scale="0" format="ixt:numdotdecimal" decimals="INF">3</ix:nonFraction>
<ix:nonFraction id="c81754822" contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN" unitRef="Pure" name="apt:NumberOfStoresRented" scale="0" format="ixt:numdotdecimal" decimals="INF">1</ix:nonFraction>
<ix:nonFraction id="c81754837" contextRef="d_2021-01-01_2021-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81754838" contextRef="d_2020-01-01_2020-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81754870" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:LineOfCredit" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81754871" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:LineOfCredit" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81754872" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:OtherLongTermDebt" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81754873" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:OtherLongTermDebt" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_PlanNameAxis-The2004PlanMember" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="c81754889" format="ixt-sec:duryear">3</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_PlanNameAxis-The2004PlanMember" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" id="c81754892" format="ixt-sec:duryear">5</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="c81754910" format="ixt-sec:duryear">2021</ix:nonNumeric>
<ix:nonFraction id="c81754919" contextRef="d_2019-01-01_2019-12-31" unitRef="Pure" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81755009" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:FinanceLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81755042" contextRef="d_2021-01-01_2021-12-31" unitRef="Pure" name="us-gaap:NumberOfOperatingSegments" scale="0" format="ixt:numdotdecimal" decimals="INF">2</ix:nonFraction>
<ix:nonFraction id="c81755103" contextRef="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" name="apt:ConcentrationRiskThresholdPercentage" scale="-2" format="ixt:numdotdecimal" decimals="1">10</ix:nonFraction>
<ix:nonFraction id="c81755106" contextRef="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" name="apt:ConcentrationRiskThresholdPercentage" scale="-2" format="ixt:numdotdecimal" decimals="1">10</ix:nonFraction>
<ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_TitleOfIndividualAxis-OfficerMember" name="apt:EmploymentAgreementTerm" id="c81755124" format="ixt-sec:duryear">5</ix:nonNumeric></ix:hidden>
<ix:references>
<link:schemaRef xlink:href="apt-20211231.xsd" xlink:type="simple"></link:schemaRef></ix:references>
<ix:resources>
<xbrli:context id="d_2021-01-01_2021-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:unit id="USD"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit>
<xbrli:context id="i_2021-06-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="Share"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit>
<xbrli:context id="i_2022-03-04"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-03-04</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="NonApplicable"><xbrli:measure>thunderdome:item</xbrli:measure></xbrli:unit>
<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_2020-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="USDPerShare"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit>
<xbrli:context id="d_2020-01-01_2020-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></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_2019-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>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-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>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-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>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2019-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-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:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-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:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-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:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2020-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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2020-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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_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:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_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:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_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:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></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_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:unit id="Year"><xbrli:measure>utr:Y</xbrli:measure></xbrli:unit>
<xbrli:context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-FurnitureAndFixturesMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-FurnitureAndFixturesMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-SoftwareDevelopmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_RangeAxis-MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-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>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-12-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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">apt:PatentsAndTrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">apt:PatentsAndTrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">apt:PatentsAndTrademarksMember</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_2020-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">apt:PatentsAndTrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="Pure"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit>
<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="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_2021-12-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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="SquareFoot"><xbrli:measure>utr:sqft</xbrli:measure></xbrli:unit>
<xbrli:context id="i_2021-12-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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-12-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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-12-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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-12-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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-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>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-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>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-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:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2020-05-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-05-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-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>2021-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="d_2021-01-01_2021-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>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-12-31_PlanNameAxis-IncentivePlan2020Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:IncentivePlan2020Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-06-10_2021-12-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>2020-06-10</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-12-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:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-12-31_TitleOfIndividualAxis-EmployeesAndDirectorsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">apt:EmployeesAndDirectorsMember</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="d_2021-01-01_2021-12-31_TitleOfIndividualAxis-EmployeesAndDirectorsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">apt:EmployeesAndDirectorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2019-01-01_2019-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_RetirementPlanTypeAxis-ForEmployeesContributing1PercentOfGrossEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">apt:ForEmployeesContributing1PercentOfGrossEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_RetirementPlanTypeAxis-ForEmployeesContributing2To12PercentOfGrossEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">apt:ForEmployeesContributing2To12PercentOfGrossEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-12-31_TitleOfIndividualAxis-PresidentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:PresidentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2020-12-31_TitleOfIndividualAxis-PresidentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:PresidentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-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:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-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:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-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:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-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:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-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:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-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:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-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:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-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:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-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:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-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:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-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:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-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:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-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:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-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:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2020-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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2020-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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2020-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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_StatementGeographicalAxis-AU"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2020-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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2020-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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2020-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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2020-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>2020-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerAMember</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="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerBMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerBMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerCMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerCMember</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="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerAMember</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="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerBMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerBMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerCMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerCMember</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="d_2021-01-01_2021-12-31_TitleOfIndividualAxis-OfficerMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:OfficerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">apt:ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">apt:ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-01-01_2021-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2020-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</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_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</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></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;"><b>UNITED STATES</b></p>
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>SECURITIES AND EXCHANGE COMMISSION</b></p>
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>Washington, D.C. 20549</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;"><b>FORM <ix:nonNumeric name="dei:DocumentType" contextRef="d_2021-01-01_2021-12-31">10-K</ix:nonNumeric></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;"><b><ix:nonNumeric name="dei:DocumentAnnualReport" format="ixt-sec:boolballotbox" contextRef="d_2021-01-01_2021-12-31">&#x2612;</ix:nonNumeric> Annual Report Pursuant to Section 13 or 15(d) of the Securities Exchange Act of 1934</b></p>
<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>For the fiscal year ended <ix:nonNumeric name="dei:DocumentPeriodEndDate" format="ixt:datemonthdayyearen" contextRef="d_2021-01-01_2021-12-31">December 31, 2021</ix:nonNumeric></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;"><b>or</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;"><b><ix:nonNumeric name="dei:DocumentTransitionReport" format="ixt-sec:boolballotbox" contextRef="d_2021-01-01_2021-12-31">&#x2610;</ix:nonNumeric> Transition Report Pursuant to Section 13 or 15(d) of the Securities Exchange Act of 1934</b></p>
<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt -9pt; text-indent: 36pt;"><b>For the transition period from&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0; to </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;text-indent:9pt;"><b>Commission file number: <ix:nonNumeric name="dei:EntityFileNumber" contextRef="d_2021-01-01_2021-12-31">001-15725</ix:nonNumeric></b></p>
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;text-indent:9pt;">&#xa0;</p>
<hr style="text-align: center; height: 1px; color: #000000; background-color: #000000; width: 25%; border: none; margin: 3pt auto" />
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;text-indent:9pt;">&#xa0;</p>
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;text-indent:9pt;"><b>ALPHA PRO TECH, LTD.</b></p>
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;text-indent:9pt;">(Exact Name of Registrant as Specified in Its Charter)</p>
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;text-indent:9pt;">&#xa0;</p>
<hr style="text-align: center; height: 1px; color: #000000; background-color: #000000; width: 25%; border: none; margin: 3pt auto" />
<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
<table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;"><tbody><tr><td style="width: 50%; text-align: center;"><b><ix:nonNumeric name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen" contextRef="d_2021-01-01_2021-12-31">Delaware</ix:nonNumeric></b></td><td style="width: 50%; text-align: center;"><b><ix:nonNumeric name="dei:EntityTaxIdentificationNumber" contextRef="d_2021-01-01_2021-12-31">63-1009183</ix:nonNumeric></b></td></tr>
<tr><td style="text-align: center;">(State or Other Jurisdiction of Incorporation or Organization)</td><td style="text-align: center;">(I.R.S. Employer Identification No.)</td></tr>
</tbody></table>
<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;"><b><ix:nonNumeric name="dei:EntityAddressAddressLine1" contextRef="d_2021-01-01_2021-12-31">60 Centurian Drive, Suite 112</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressCityOrTown" contextRef="d_2021-01-01_2021-12-31">Markham</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressStateOrProvince" format="ixt-sec:stateprovnameen" contextRef="d_2021-01-01_2021-12-31">Ontario</ix:nonNumeric></b>, <b><ix:nonNumeric name="dei:EntityAddressPostalZipCode" contextRef="d_2021-01-01_2021-12-31">L3R 9R2</ix:nonNumeric></b></p>
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">(Address of Principal Executive Offices, including zip code)</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;"><b>Registrant's telephone number, including area code: <ix:nonNumeric name="dei:CityAreaCode" contextRef="d_2021-01-01_2021-12-31">905</ix:nonNumeric>-<ix:nonNumeric name="dei:LocalPhoneNumber" contextRef="d_2021-01-01_2021-12-31">479-0654</ix:nonNumeric></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;">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 cellpadding="0" cellspacing="0" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 100%;"><tbody><tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top; width: 28.3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-left: 1px solid rgb(0, 0, 0); border-top: 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;"><b>Title of each class</b></p> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top; width: 29.8%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-left: 1px solid rgb(0, 0, 0); border-top: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Trading Symbol(s)</b></p> </td><td style="border-color: rgb(0, 0, 0); border-style: solid; border-width: 1px; vertical-align: top; width: 41%; 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;"><b>Name of each exchange on which registered</b></p> </td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top; width: 28.3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-left: 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;"><b></b></p><ix:nonNumeric name="dei:Security12bTitle" contextRef="d_2021-01-01_2021-12-31"><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;"><b>Common Stock,</b></p> <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;"><b>$0.01 par value</b></p></ix:nonNumeric><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;"><b></b></p> <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;">&#xa0;</p> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top; width: 29.8%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-left: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><ix:nonNumeric name="dei:TradingSymbol" contextRef="d_2021-01-01_2021-12-31">APT</ix:nonNumeric></b></p> </td><td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top; width: 41%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-left: 1px solid rgb(0, 0, 0); border-right: 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;"><b><ix:nonNumeric name="dei:SecurityExchangeName" format="ixt-sec:exchnameen" contextRef="d_2021-01-01_2021-12-31">NYSE</ix:nonNumeric> American</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;margin:0pt;">Securities registered pursuant to Section 12(g) of the Act: None</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 if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Yes&#xa0;&#x2610; <ix:nonNumeric name="dei:EntityWellKnownSeasonedIssuer" contextRef="d_2021-01-01_2021-12-31">No</ix:nonNumeric>&#xa0;&#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;margin:0pt;">Indicate by check mark if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act. Yes&#xa0;&#x2610; <ix:nonNumeric name="dei:EntityVoluntaryFilers" contextRef="d_2021-01-01_2021-12-31">No</ix:nonNumeric>&#xa0;&#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 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 name="dei:EntityCurrentReportingStatus" contextRef="d_2021-01-01_2021-12-31">Yes</ix:nonNumeric> &#x2612;&#xa0; No&#xa0;&#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 name="dei:EntityInteractiveDataCurrent" contextRef="d_2021-01-01_2021-12-31">Yes</ix:nonNumeric>&#xa0;&#x2612; No&#xa0;&#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 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>
<table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:98%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:bottom;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Large accelerated filer &#x2610;</p> </td><td style="vertical-align:bottom;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p> </td><td style="vertical-align:bottom;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><ix:nonNumeric name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen" contextRef="d_2021-01-01_2021-12-31">Accelerated filer</ix:nonNumeric>&#xa0;&#xa0;&#xa0;&#x2612;</p> </td></tr>
<tr><td style="vertical-align:bottom;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Non-accelerated&#xa0;filer&#xa0;&#xa0;&#x2610;</p> </td><td style="vertical-align:bottom;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p> </td><td style="vertical-align:bottom;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Smaller reporting company&#xa0;&#xa0;&#xa0;<ix:nonNumeric name="dei:EntitySmallBusiness" format="ixt-sec:boolballotbox" contextRef="d_2021-01-01_2021-12-31">&#x2612;</ix:nonNumeric></p> </td></tr>
<tr><td style="vertical-align:bottom;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p> </td><td style="vertical-align:bottom;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p> </td><td style="vertical-align:bottom;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Emerging growth company <ix:nonNumeric name="dei:EntityEmergingGrowthCompany" format="ixt-sec:boolballotbox" contextRef="d_2021-01-01_2021-12-31">&#x2610;</ix:nonNumeric></p> </td></tr>
</tbody></table>
<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">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;margin:0pt;">Indicate by check mark whether the registrant has filed a report on and attestation to its management&#x2019;s assessment of the effectiveness of its internal control over financial reporting under&#xa0;Section 404(b) of the Sarbanes-Oxley Act&#xa0;(15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report. <ix:nonNumeric name="dei:IcfrAuditorAttestationFlag" format="ixt:booleantrue" contextRef="d_2021-01-01_2021-12-31">&#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;">Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Act). Yes&#xa0;<ix:nonNumeric name="dei:EntityShellCompany" format="ixt-sec:boolballotbox" contextRef="d_2021-01-01_2021-12-31">&#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;">The aggregate market value of voting stock held by non-affiliates of the registrant as of June 30, 2021, was $<ix:nonFraction name="dei:EntityPublicFloat" scale="0" unitRef="USD" decimals="INF" format="ixt:numdotdecimal" contextRef="i_2021-06-30">101,367,511</ix:nonFraction>.</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;">As of March 4, 2022, the registrant had outstanding <ix:nonFraction name="dei:EntityCommonStockSharesOutstanding" scale="0" unitRef="Share" decimals="INF" format="ixt:numdotdecimal" contextRef="i_2022-03-04">13,139,391</ix:nonFraction> shares of common stock.</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;"><b>DOCUMENTS INCOPORATED BY REFERENCE</b></p>
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Portions of the registrant&#x2019;s definitive Proxy Statement for the 2022 Annual Meeting of Shareholders to be held on June 8, 2022 are incorporated by reference into Part III of this Form 10-K.</p></div>
  <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>
  <div>
    &#xa0;
  </div>
  <div>
    &#xa0;
  </div>
  <div>
   <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: center;"><b>ALPHA PRO TECH, LTD.</b></p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>INDEX TO ANNUAL REPORT ON FORM 10-K</b></p>
   <table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;">
    <tbody>
     <tr>
      <td colspan="2" style="width: 7%;">&#xa0;</td>
      <td style="width: 5%;">Page</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td colspan="2" rowspan="1" style="width: 7%;">Special Note Regarding Forward-Looking Statements</td>
      <td style="width: 5%;">3</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td colspan="2" rowspan="1" style="width: 7%;">Special Note Regarding Smaller Reporting Company Status</td>
      <td style="width: 5%;">3</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">&#xa0;</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">PART I:</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">3</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">&#xa0;</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td colspan="2" rowspan="1" style="width: 7%;">Item 1.&#xa0; Business</td>
      <td style="width: 5%;">3</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%; padding-left: 27pt;">General</td>
      <td style="width: 5%;">3</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%; padding-left: 27pt;">Business</td>
      <td style="width: 5%;">3</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%; padding-left: 27pt;">Strategy</td>
      <td style="width: 5%;">4</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%; padding-left: 27pt;">Products</td>
      <td style="width: 5%;">4</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%; padding-left: 27pt;">Markets</td>
      <td style="width: 5%;">5</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%; padding-left: 27pt;">Distribution</td>
      <td style="width: 5%;">5</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%; padding-left: 27pt;">Financial Information About Geographic Areas</td>
      <td style="width: 5%;">6</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%; padding-left: 27pt;">Manufacturing</td>
      <td style="width: 5%;">6</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%; padding-left: 27pt;">Competition</td>
      <td style="width: 5%;">7</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%; padding-left: 27pt;">Regulatory Requirements</td>
      <td style="width: 5%;">7</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%; padding-left: 27pt;">Patents and Trademarks</td>
      <td style="width: 5%;">7</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%; padding-left: 27pt;">Human Capital</td>
      <td style="width: 5%;">7</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%; padding-left: 27pt;">Available Information</td>
      <td style="width: 5%;">8</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">Item 1A.</td>
      <td style="width: 88%; padding-left: 0pt;">Risk Factors</td>
      <td style="width: 5%;">8</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">Item 1B.</td>
      <td style="width: 88%;">Unresolved Staff Comments</td>
      <td style="width: 5%;">12</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">Item 2.</td>
      <td style="width: 88%;">Properties</td>
      <td style="width: 5%;">12</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">Item 3.</td>
      <td style="width: 88%;">Legal Proceedings</td>
      <td style="width: 5%;">12</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">Item 4.</td>
      <td style="width: 88%;">Mine Safety Disclosures</td>
      <td style="width: 5%;">12</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">&#xa0;</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">PART II:</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">13</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">&#xa0;</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">Item 5.</td>
      <td style="width: 88%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Market For Registrant&#x2019;s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities</p> </td>
      <td style="width: 5%;">13</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">Item 6.</td>
      <td style="width: 88%;">(Reserved)</td>
      <td style="width: 5%;">13</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">Item 7.</td>
      <td style="width: 88%;">Management&#x2019;s Discussion and Analysis of Financial Condition and Results of Operations</td>
      <td style="width: 5%;">13</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">Item 7A.</td>
      <td style="width: 88%;">Quantitative and Qualitative Disclosures About Market Risk</td>
      <td style="width: 5%;">20</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">Item 8.</td>
      <td style="width: 88%;">Financial Statements and Supplementary Data</td>
      <td style="width: 5%;">21</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">Item 9.</td>
      <td style="width: 88%;">Changes in and Disagreements With Accountants on Accounting and Financial Disclosure</td>
      <td style="width: 5%;">42</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">Item 9A.</td>
      <td style="width: 88%;">Controls and Procedures</td>
      <td style="width: 5%;">42</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">Item 9B.</td>
      <td style="width: 88%;">Other Information</td>
      <td style="width: 5%;">42</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">Item 9C.</td>
      <td style="width: 88%;">Disclosure Regarding Foreign Jurisdictions that Prevent Inspections</td>
      <td style="width: 5%;">42</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">&#xa0;</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">PART III:</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">43</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">&#xa0;</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">Item 10.</td>
      <td style="width: 88%;">Directors, Executive Officers and Corporate Governance</td>
      <td style="width: 5%;">43</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">Item 11.</td>
      <td style="width: 88%;">Executive Compensation</td>
      <td style="width: 5%;">43</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">Item 12.</td>
      <td style="width: 88%;">Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</td>
      <td style="width: 5%;">43</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">Item 13.</td>
      <td style="width: 88%;">Certain Relationships and Related Transactions, and Director Independence</td>
      <td style="width: 5%;">43</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">Item 14.</td>
      <td style="width: 88%;">Principal Accountant Fees and Services</td>
      <td style="width: 5%;">43</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">&#xa0;</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">PART IV:</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">44</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">&#xa0;</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">Item 15.</td>
      <td style="width: 88%;">Exhibits and Financial Statement Schedules</td>
      <td style="width: 5%;">44</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">Item 16.</td>
      <td style="width: 88%;">Form 10-K Summary</td>
      <td style="width: 5%;">44</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">&#xa0;</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">&#xa0;</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td colspan="2" rowspan="1" style="width: 7%;">Exhibit Index</td>
      <td style="width: 5%;">45</td>
     </tr>

     <tr style="background-color: rgb(204, 238, 255);">
      <td style="width: 7%;">&#xa0;</td>
      <td style="width: 88%;">&#xa0;</td>
      <td style="width: 5%;">&#xa0;</td>
     </tr>

     <tr style="background-color: rgb(255, 255, 255);">
      <td colspan="2" rowspan="1" style="width: 7%;">Signatures</td>
      <td style="width: 5%;">46</td>
     </tr>

    </tbody>
   </table>
  </div>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:126pt;">&#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="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>
    &#xa0;
  </div>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>PART I</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;"><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;">This Annual Report on Form 10-K contains forward-looking statements that are made pursuant to the &#x201c;safe harbor&#x201d; provisions of the Private Securities Litigation Reform Act of 1995. Forward-looking statements involve risks, uncertainties and assumptions as described from time to time in registration statements, annual reports and other periodic reports and filings of the Company (as defined below) filed with the Securities and Exchange Commission (&#x201c;SEC&#x201d;). 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 2022, the expected effects of the COVID-19 pandemic, and other information that is not historical information. All statements, other than statements of historical facts that address the Company&#x2019;s expectations of sources of capital or that express the Company&#x2019;s expectations for the future with respect to financial performance or operating strategies or results can be identified as forward-looking statements. As a result, there can be no assurance that the Company&#x2019;s future results will not be materially different from those described herein as &#x201c;expected,&#x201d; &#x201c;anticipated,&#x201d; &#x201c;estimated,&#x201d; &#x201c;believed,&#x201d; &#x201c;predicted,&#x201d; &#x201c;intended,&#x201d; &#x201c;planned,&#x201d; &#x201c;potential,&#x201d; &#x201c;may,&#x201d; &#x201c;continue&#x201d; or &#x201c;should,&#x201d; or using variations of such words or similar expressions, which reflect the current views of the Company with respect to future events. We caution readers that these forward-looking statements speak only as of the date hereof. The Company hereby expressly disclaims any obligation or undertaking to release publicly any updates or revisions to any such statements to reflect any change in the Company&#x2019;s expectations or any change in events, conditions or circumstances on which such statements are based.</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;">Any expectations based on these forward-looking statements are subject to risks and uncertainties. These risks and other factors include, but are not limited to, those listed in this report under &#x201c;Risk Factors,&#x201d; &#x201c;Management&#x2019;s Discussion and Analysis of Financial Condition and Results of Operations,&#x201d; and elsewhere in this report. 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;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 Annual Report on Form 10-K as a &#x201c;smaller reporting company&#x201d; (as defined in Rule 12b-2 of the Securities Exchange Act of 1934, as amended) based on our public float (the aggregate market value of our common stock equity held by non-affiliates of the Company) as of the last business day of our second fiscal quarter of 2021. As a result of being a smaller reporting company, we are not required to provide certain disclosure in this Annual Report on Form 10-K. Where information is being omitted or reduced in this Annual Report on Form 10-K based on our smaller reporting company status, we have made a special notation herein.</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;"><b>Item 1.&#xa0;&#xa0;&#xa0; Business.</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;"><b>GENERAL</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, LTD. (&#x201c;Alpha Pro Tech,&#x201d; the &#x201c;Company,&#x201d; &#x201c;we,&#x201d; &#x201c;our&#x201d; or &#x201c;us&#x201d;) is the parent company of Alpha Pro Tech, Inc. and Alpha ProTech Engineered Products, Inc. The Company was incorporated in the State of Delaware on July 1, 1994 as a successor to a business that was organized in 1983. Our executive offices are located at 60 Centurian Drive, Suite 112, Markham, Ontario, Canada L3R 9R2, and our telephone number is (905) 479-0654. Our website is located at www.alphaprotech.com.</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 continued to qualify as a smaller reporting company at the measurement date for determining such qualification during 2021. According to the disclosure requirements for smaller reporting companies, the Company has included consolidated balance sheets as of December 31, 2021 and 2020 and consolidated statements of comprehensive income, shareholders&#x2019; equity and cash flows for each of the two years in the period ended December 31, 2021.</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;"><b>BUSINESS</b></p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">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 and infection control products for the cleanroom, industrial, pharmaceutical, medical and dental markets through our wholly-owned subsidiary, Alpha Pro Tech, Inc. We also manufacture a line of building supply construction weatherization products through our wholly owned subsidiary, Alpha ProTech Engineered Products, Inc. Our products are sold under the Alpha Pro Tech 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: (1) the Building Supply segment, consisting of construction weatherization products, such as housewrap, housewrap accessories including window and door flashing, and seam tape, and synthetic roof underlayment, as well as other woven material; and (2) 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. All financial information presented in this report reflects the current segmentation.</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="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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>STRATEGY</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;">Our principal strategy focuses on developing, producing and marketing differentiated, innovative high value products that protect people, products and environments. Our key sales growth strategies are based on communicating directly with end users and developing innovative products to suit individual end users&#x2019; needs.</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 and health care facilities, such as hospitals, laboratories and dental offices, as well as building and re-roofing sites. Our products are distributed principally in the United States of America (&#x201c;United States&#x201d; or &#x201c;U.S.&#x201d;) 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;"><b>PRODUCTS</b>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#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;">Our principal products are grouped into two business segments:</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;margin:0pt 0pt 0pt 34pt;text-indent:36pt;"><b>Building Supply:</b></p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 70pt;">&#x25cf;&#xa0;&#xa0;&#xa0;&#xa0;Housewrap</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 70pt;">&#x25cf;&#xa0;&#xa0;&#xa0;&#xa0;Housewrap accessories: window and door flashing and seam tape</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 70pt;">&#x25cf;&#xa0;&#xa0;&#xa0;&#xa0;Synthetic roof underlayment</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 70pt;">&#x25cf;&#xa0;&#xa0;&#xa0;&#xa0;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;margin:0pt 0pt 0pt 36pt;text-indent:34pt;"><b>Disposable Protective Apparel:</b></p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 70pt;">&#x25cf;&#xa0;&#xa0;&#xa0;&#xa0;Shoecovers</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 70pt;">&#x25cf;&#xa0;&#xa0;&#xa0;&#xa0;Bouffant caps</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 70pt;">&#x25cf;&#xa0;&#xa0;&#xa0;&#xa0;Gowns</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 70pt;">&#x25cf;&#xa0;&#xa0;&#xa0;&#xa0;Coveralls</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 70pt;">&#x25cf;&#xa0;&#xa0;&#xa0;&#xa0;Lab coats</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 70pt;">&#x25cf;&#xa0;&#xa0;&#xa0;&#xa0;Frocks</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 70pt;">&#x25cf;&#xa0;&#xa0;&#xa0;&#xa0;Face masks</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 70pt;">&#x25cf;&#xa0;&#xa0;&#xa0;&#xa0;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;"><b>Building Supply</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;">The Building Supply segment consists of a line of construction supply weatherization products, namely housewrap, housewrap accessories and synthetic roof underlayment, as well as other woven material. This line of products is a natural extension of our core capabilities: creating proprietary products designed to protect people and environments.</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 usage of these construction supply weatherization products offers great advantages in decreasing the time that it takes to construct a home, as well as reducing costs.&#xa0; The housewrap, under the trademark REX&#x2122;, offers a weather resistant barrier and, to the homeowner, years of lower energy consumption.&#xa0; REX Wrap&#xae; and REX Wrap Plus&#xae; are woven and coated polypropylene micro perforated weather resistant barriers, and REX&#x2122; Wrap Fortis with JX ALTA 360&#xb0; Drainage Technology&#x2122; is a one-of-a-kind breathable product that uniquely enables the drainage of water in every direction to protect buildings from the elements exponentially better, we believe, than a traditional housewrap, while decreasing job site material waste, simplifying installation to reduce labor and allowing fewer products to be carried onto the job site. Our housewrap accessories includes REXTREME Window and Door Flashing, which provides a tight seal from air and moisture around windows and doors and REX&#x2122; Premium Seam Tape which is a high-strength film that helps to seal all seams on housewrap applications.</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 proprietary synthetic roof underlayment, REX SynFelt&#xae;, has the ability to resist the environment, as opposed to conventional organic roofing underlayment that is prone to rapid degradation and mold growth.&#xa0; We also manufacture and distribute TECHNOply&#xae; and TECHNO SB&#xae;, economy versions of our synthetic roof underlayment, to capture market share in the lower end of the market. These products are manufactured in our manufacturing facility in Valdosta, Georgia and through our joint venture in India, as described in more detail below under &#x201c;Manufacturing.&#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>Disposable Protective Apparel</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 Disposable Protective Apparel segment consists of a complete line of disposable protective garments (shoecovers, bouffant caps, coveralls, gowns, frocks and lab coats), as well as face masks and face shields.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Our goal in the design and manufacture of all our disposable protective garments is to keep the wearer cool, clean, comfortable and to provide the right level of protection for the wearer and the wearer&#x2019;s environment.&#xa0; To achieve this, we offer a comprehensive selection of materials and garment designs to meet a wide range of application requirements. Our materials are clean, durable and offer the wearer a great comfort level. Our products are offered under proprietary materials such as ChemTech&#xae;, BarrierTech&#xae;, ComforTech&#xae;, AlphaGuard&#xae; and GenPro&#xae;,&#xa0;&#xa0; UltraGrip&#x2122;, SafeStep&#xae;, MaxGrip&#xae;, AquaTrak&#xae;, SureGrip&#xae;, NuTech&#xae; and NaviTrak&#xae;.</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;">
       4
     </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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The vast majority of the disposable protective garments are manufactured through our joint venture in India, and, to a much lesser extent, by other contract manufacturers in Asia and Mexico, as described in more detail below under &#x201c;Manufacturing.&#x201d; Certain proprietary products are made using materials supplied by us.</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 face masks come in a wide variety of filtration efficiencies and styles. Our patented Positive Facial Lock&#xae; feature provides a custom fit to the face to prevent blow-by for better protection. The term "blow-by" is used to describe the potential for infectious material to enter or escape a face mask without going through the filter as a result of gaps or openings in the face mask. Our Magic Arch&#xae; feature holds the mask away from the nose and mouth, creating a comfortable breathing chamber.</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 N-95 Particulate Respirator National Institute for Occupational Safety and Health (&#x201c;NIOSH&#x201d;) approved face mask, which incorporates both the Positive Facial Lock&#xae; feature and the Magic Arch&#xae; feature, has historically experienced increased demand during outbreaks of infectious disease, such as SARS in 2003, Bird Flu in 2006, H1N1 in 2009 and COVID-19 in 2020, to combat the spread of these diseases.</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;">All eye shields are made from an optical-grade polyester film and have a permanent anti-fog feature. This provides the wearer with extremely lightweight, distortion-free protection that can be worn for hours, and the eye shields will not fog up from humidity and/or perspiration. An important feature of all face masks and eye and face shields is that they are disposable, which eliminates the possibility of cross infection between patients and saves consumers, such as hospitals, the expense of sterilization after every use.</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 described in more detail below under &#x201c;Manufacturing,&#x201d; our face masks are primarily manufactured in our facility in Salt Lake City, Utah. Our eye shields are produced in our facility in Nogales, Arizona and assembled by a subcontractor in Mexico.</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;">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;">The Company&#x2019;s products are sold under the &#x201c;Alpha Pro Tech&#x201d; brand name and under private label, and they are predominantly sold in the U.S.</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;">Financial information related to the two segments can be found in Activity of Business Segments (Note 15) of the Notes to 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;"><b>MARKETS</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;">Our products are sold to the following markets: (i) construction weatherization products (building supply products) are sold to construction supply and roofing distributors, and (ii) disposable protective apparel products are sold to the industrial, cleanroom, 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;">Our target customers are construction building supply and roofing distributors, pharmaceutical manufacturing, bio-pharmaceutical manufacturing, medical device manufacturing, lab animal research, high technology electronics manufacturing (which includes the semi-conductor market), and medical and dental 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;"><b>DISTRIBUTION</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 rely primarily on a network of independent distributors for the sale of our 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;">We do not generally have backlog orders, as orders are usually placed for shipment and shipped within 30 days. Appropriate levels of inventories are maintained to supply distributors on a timely basis. From time to time, we will stockpile inventory for periods of unusually high demand.</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;">Disruptions in the supply chain as well unpredictable changes in the response to the COVID-19 pandemic have created occasional backlogs of unfulfilled orders for our personal protective equipment (&#x201c;PPE&#x201d;) products and certain of our building supply products, and uncertainty in the timing of deliveries and fulfillment of backlogged orders can occur 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;">Standard payment terms are net 30 days from the date of shipment. All pricing and payment for our products are in U.S. dollars. Authorized returns must be unopened, in good condition and in the original carton and may be returned within 90 days of the original date of shipment. All authorized returns are subject to a restocking fee of 20% of the original invoice.</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;">
       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="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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>FINANCIAL INFORMATION ABOUT GEOGRAPHIC AREAS</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 summarizes the Company&#x2019;s net sales by geographic region for the Company&#x2019;s last two years. All amounts have been rounded to the nearest thousand.</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" class="finTable" style="margin-right: 20%; 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; width: 62%;">&#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: 20%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Years Ended December 31,</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: 62%;">&#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>2021</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>2020</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="width: 62%;">&#xa0;</td>
     <td style="width: 1%;">&#xa0;</td>
     <td style="width: 1%;">&#xa0;</td>
     <td style="width: 16%;">&#xa0;</td>
     <td style="width: 1%;">&#xa0;</td>
     <td style="width: 1%;">&#xa0;</td>
     <td style="width: 1%;">&#xa0;</td>
     <td style="width: 16%;">&#xa0;</td>
     <td style="width: 1%;">&#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; width: 62%;"> <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; 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: 16%;">&#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="font-family: Times New Roman; font-size: 10pt; width: 1%;">&#xa0;</td>
     <td style="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>

    <tr style="vertical-align: bottom; background-color: rgb(255, 255, 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-top: 0pt; margin-bottom: 0pt; margin-left: 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;">65,844,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%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">90,495,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: 62%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 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);">2,793,000</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);">12,205,000</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="width: 62%;">&#xa0;</td>
     <td style="width: 1%;">&#xa0;</td>
     <td style="width: 1%;">&#xa0;</td>
     <td style="width: 16%;">&#xa0;</td>
     <td style="width: 1%;">&#xa0;</td>
     <td style="width: 1%;">&#xa0;</td>
     <td style="width: 1%;">&#xa0;</td>
     <td style="width: 16%;">&#xa0;</td>
     <td style="width: 1%;">&#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; width: 62%;"> <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;">68,637,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; 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;">102,700,000</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Net sales by geographic region are based on the countries in which our customers are located.&#xa0; For the year ended December 31, 2021, the Company did not generate sales from any single country, except the United States, that were significant to the Company&#x2019;s consolidated net sales. For the year ended December 31, 2020 the Company generated sales of approximately $8,090,000 from Australia. During that year, no other single country (other than the United States) had sales that were 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;">The following table summarizes the locations of the Company&#x2019;s long-lived assets by geographic region as of December 31, 2021 and 2020.</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%; 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; 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>As of December 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>2021</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>2020</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>Long-lived assets by geographic region</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; width: 62%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 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;">4,623,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%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">2,787,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;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 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);">1,441,000</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);">1,566,000</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;">Consolidated total long-lived assets</td>
     <td style="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;">6,064,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; 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;">4,353,000</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#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;"><b>MANUFACTURING</b></p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Our wholly-owned subsidiary, Alpha ProTech Engineered Products, Inc., manufactures and distributes a line of construction weatherization products for the Building Supply segment, comprised primarily of housewrap and synthetic roof underlayment. Alpha ProTech Engineered Products, Inc. operates in a 165,400 square foot facility in Valdosta, Georgia.</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 ProTech Engineered Products, Inc. has a 41.66% ownership interest in a joint venture with Maple Industries and associates, a manufacturer in India, for the production of Building Supply segment products, such as housewrap and synthetic roof underlayment products, in a semi-finished state, and the production of Disposable Protective Apparel segment products. The name of the joint venture is Harmony Plastics Private Limited (&#x201c;Harmony&#x201d;). Harmony has four facilities in India, three owned and one rented. One owned facility is a 113,000 square foot building for use in the manufacturing of building products. There is a 73,000 square foot owned facility for use in the manufacturing of coated material and the sewing of proprietary disposable protective apparel. There is also a 16,000 square foot owned facility for use in the sewing of proprietary disposable protective apparel. The rented building is a 93,000 square foot facility for use in the manufacturing of Building Supply segment 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;">We cut, warehouse and ship disposable protective apparel products in a 60,000 square foot facility in Nogales, Arizona. The majority of these products are manufactured by contract manufacturers in Asia and, to a much lesser extent, by a contract manufacturer in Mexico. These goods are manufactured pursuant to our specifications and quality assurance guidelines. Certain proprietary products are being made in Asia using materials supplied by us.</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 mask production facility is located in a 34,500 square foot building in 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;">We have encountered over the last year a number of constraints within our supply chain due to raw material and labor shortages, as well as 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. Our business is not subject to significant seasonal considerations, although it is necessary for us to have adequate raw materials and finished inventory in stock.</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>COMPETITION </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 face substantial competition from numerous companies, including many companies with greater marketing and financial resources. Our major competitors in the construction supply weatherization market are DuPont for housewrap and Interwrap Inc. for synthetic roof underlayment. Our major competitor in the medical and dental markets is Kimberly-Clark Corporation of Fort Worth, Texas. Other large competitors include 3M Company, Johnson &amp; Johnson, White Knight Engineered Products (Precept Medical Products, Inc.), Cardinal Health, Inc. and Medline Industries Inc. Our major competitors in the industrial and cleanroom market are our former largest distributor, VWR International, LLC, Kimberly-Clark Corporation, 3M Company, Kappler, Inc., DuPont and Allegiance Healthcare Corporation. VWR International, LLC, Cardinal Health, Inc. and Medline Industries Inc. are also distributors of our products. The principal methods and elements of competition include brand recognition and loyalty, product innovation, quality and performance, price, and marketing and distribution capabilities. For additional discussion of the competitive environment in which we conduct our business, see Part I, Item 1A, &#x201c;Risk Factors &#x2013; Risks Related to Our Industry.&#x201d;</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;">
       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="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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>REGULATORY REQUIREMENTS</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 not required to obtain regulatory approval from the U.S. FDA with respect to the sale of our products. Our products are, however, subject to prescribed good manufacturing practices as defined by the FDA, and our manufacturing facilities are inspected by the FDA every two years to ensure compliance with such good manufacturing practices. We are marketing an N-95 Particulate Respirator face mask that meets the Occupational Safety and Health Administration (OSHA) respirator guidelines and has been approved by the National Institute for Occupational Safety and Health (NIOSH). This product is designed to help prevent the inhalation of the tuberculosis bacteria.</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 operations are subject to federal, state and local laws, regulations and ordinances relating to various environmental, health and safety matters. We believe that our operations are in compliance with, or we are taking actions designed to ensure compliance with, these laws, regulations, and ordinances. However, the nature of our operations exposes us to the risk of claims concerning non-compliance with environmental, health, and safety laws or standards, and there can be no assurance that material costs or liabilities will not be incurred in connection with those claims. We are not currently named as a party in any judicial or administrative proceeding relating to environmental, health, and safety matters, and we currently have no anticipated capital expenditures for environmental projects that are expected to have a material effect on our financial condition, results of operations or liquidity.</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>PATENTS AND TRADEMARKS</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>Patents</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;">Our policy is to protect our intellectual property rights, products, designs and processes through the filing of patents in the United States and, where appropriate, in Canada and other countries. At present, we have ten United States patents relating to several of our products. In addition, we have a United States patent on a method to fold and put on sterile garments. We believe that our patents may offer a competitive advantage, but there can be no assurance that any patents, issued or in process, will not be circumvented or invalidated. We also rely on trade secrets and proprietary know-how to maintain and develop our commercial position. The various United States patents issued have remaining durations of approximately 1 to 4 years before expiration.</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;"><b>Trademarks</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;">Many of our products are sold under various trademarks and trade names, including Alpha Pro Tech. We believe that many of our trademarks and trade names have significant recognition in our principal markets, and we take customary steps to register or otherwise protect our rights in our trademarks and trade names.</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>HUMAN CAPITAL</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 1, 2022, we had 121 full-time employees, including 18 employees at our principal executive office in Markham, Ontario, Canada; 14 employees at our face mask production facility in Salt Lake City, Utah; 27 employees at our Disposable Protective Apparel segment cutting, warehouse and shipping facility in Nogales, Arizona; 45 employees at our Building Supply segment facility in Valdosta, Georgia; 16 employees on our sales and marketing team, located in various areas throughout the United States; and 1 employee in China.</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;">None of our employees are subject to collective bargaining agreements. We have had no labor-related work stoppages, and we believe that our relations with our employees are good.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Workplace Health and Safety</i></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 health, safety, and wellness of our employees is a priority in which we have always invested, and will continue to do so. These investments and the prioritization of employee health, safety, and wellness took on particular significance in 2020 in light of COVID-19, which prioritization continued throughout 2021. To that end, the Company maintains a variety of programs to reduce and eliminate injuries and promote safety and regularly measures progress against those programs. These programs promote personal responsibility for workplace safety and encourage associates to set a meaningful example as safety ambassadors.</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 response to the COVID-19 pandemic, we implemented significant changes that we determined were in the best interest of our employees, as well as the communities in which we operate, in compliance with government regulations. Through the efforts of a cross-functional COVID-19 response team, the Company has responded to numerous people-related challenges resulting from the pandemic. The Company addressed various country, state, and local restrictions, mandates and guidelines and provided compliance programs at all Company locations designed to operate facilities in a safe manner. To protect and support our essential team members, we implemented health and safety measures that included maximizing personal workspaces, changing shift schedules, providing PPE, and instituting mandatory screening before accessing buildings.</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="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="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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Diversity and Inclusion</i></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 strive to foster a culture where mutual respect, inclusive behavior, and dignity are core to our individual expectations. We remain committed to fostering an inclusive environment in which our differing backgrounds, life experiences, and perspectives join to positively impact the communities in which we live and serve. We do this by leading with inclusion and empowering everyone to do their best work as their most authentic selves&#x2014;regardless of race, color, national origin, religion, sex, sexual orientation, gender identity and expression, age, disability, or military service status. We are united by our collective purpose and common set of organizational values that are core to our mission and culture.</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>AVAILABLE 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;">We make available free of charge on our Internet website (<span style="text-decoration: underline; ">http://www.alphaprotech.com</span>) our most recent Annual Report on Form 10-K, our Quarterly Reports on Form 10-Q filed since 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 well as our most recent proxy statement, as soon as reasonably practicable following the electronic filing of such documents with the SEC. These filings are also available on the SEC&#x2019;s website (http://www.sec.gov).</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 not including the information contained on or available through its website as a part of, or incorporating such information into, this Annual Report on 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;margin:0pt;"><b>Item 1A.&#xa0;&#xa0;&#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;">Making or continuing an investment in common stock issued by the Company involves certain risks that you should carefully consider. The risks and uncertainties described below are not the only risks that may have a material adverse effect on the Company. Additional risks and uncertainties also could adversely affect our business and our results. If any of the following risks actually occur, our business, financial condition and results of operations could be negatively affected, the market price of our common stock could decline and you could lose all or a part of your investment. Further, to the extent that any of the information contained in this Annual Report on Form 10-K constitutes forward-looking statements, the risk factors set forth below also are cautionary statements identifying important factors that could cause the Company&#x2019;s actual results to differ materially from those expressed in any forward-looking statements made by or on behalf of the Company.</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>Risks Related to the COVID-19 Pandemic</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>The effects of the COVID-19 pandemic could continue to have a material adverse effect on our business, financial results 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;">The situation relating to the COVID-19 pandemic is complex and still evolving, with a broad number of governmental and commercial efforts to contain the spread of the virus globally. The duration and extent of the impact of the COVID-19 pandemic on our business, operations and financial results depends on factors that cannot be accurately predicted at this time, such as the severity and transmission rate of new variants of the COVID-19 virus, the extent and effectiveness of containment actions, the speed and efficacy of vaccination efforts, and the impact of these and other factors on our employees, customers, industry partners, suppliers and third-party dealers and 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;">Federal, state and local governments, as well as foreign governments, have imposed numerous protocols and regulations in an effort to limit the spread of the COVID-19. We have implemented a number of measures in an effort to protect our employees&#x2019; health and well-being, including having certain office workers work remotely. The potential negative effects to our operations, including reductions in production levels, research and development activities and increased costs resulting from our efforts to mitigate the impact of COVID-19, have adversely affected and may continue to adversely affect our ability to provide our products. Furthermore, the implications of unsuccessfully implementing health and well-being measures, which could, for example, result in workers at our manufacturing facilities testing positive for COVID-19, would also adversely affect our business, including resulting in a product recall. Although we will continue to adhere to restrictions imposed by local governments in the jurisdictions in which we operate, government regulations have impacted workforce availability and expense in certain of the Company&#x2019;s manufacturing facilities, and we expect this to continue for some time.</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;">
       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="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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Although we have experienced increased sales and significantly increased demand for our PPE products in 2020, the global COVID-19 pandemic had and may continue to have an adverse impact on our manufacturing and distribution capabilities. Disruptions relating to the COVID-19 pandemic, including shelter-in-place orders in the U.S., Mexico, India and other countries, prevented and could again prevent employees, suppliers, distributors and others from accessing manufacturing facilities and from transporting our products or the components required to manufacture our products. For example, the government-mandated closure in India, which started in late March and ended in May 2020, impacted our order fulfillment and revenue growth related to our disposable protective garments. Any government regulation may also impact our ability to supply and ship our products to certain customers, which could lead to cancellation of some orders. Further, worldwide supply chain disruption relating to the COVID-19 pandemic has resulted in product shortages that have impacted and may continue to impact our ability to manufacture our products. We currently utilize third parties to, among other things, manufacture certain components and materials for our products, and to provide services such as sterilization services, and we purchase these materials and services from numerous suppliers worldwide. If either we or any third parties in the supply chain for materials used in the production of our products continue to be adversely impacted by the COVID-19 pandemic, including the restrictions resulting from the COVID-19 pandemic, our supply chain may continue to be disrupted, limiting our ability to manufacture our products. These disruptions may, among other things, continue to impact our ability to produce and supply products in quantities necessary to meet market demand. In addition, we have experienced increases in the costs of materials and supplies and shipping costs due to supply chain disruptions, and expect to continue to see higher costs.</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;">Further, in connection with the COVID-19 pandemic and in an effort to increase the wider availability of needed medical and other supplies and products, we may elect to, or governments may require us to, allocate our products (for example, pursuant to the U.S. Defense Production Act (the &#x201c;DPA&#x201d;)) in a way that adversely affects our regular operations and financial results, results in differential treatment of customers and/or adversely affects our reputation and customer relationships. Likewise, suppliers of our raw materials who are subject to requests under the DPA may be unable to fulfill our orders for those raw materials, or such fulfillment could be delayed. In addition, unpredictable increases in demand for certain of our products could, or in some cases may continue to, exceed our capacity to meet such demand, which could adversely affect our financial results and customer relationships and result in negative publicity.</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;">As a result of the COVID-19 pandemic, we experienced a significant increase in orders of our PPE products from both legacy and new customers in 2020, followed by a decline in sales in 2021 for such products.&#xa0; Because of the uncertainty associated with the pandemic, we may experience additional decreases in sales from certain of these customers at the point at which conditions related to the virus change or improve and demand for these products subsides, which could impact our expectations of future orders and 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;">Moreover, the impacts of the COVID-19 pandemic may exacerbate other pre-existing risks, such as political, regulatory, social, financial, operational and cybersecurity risks, and those associated with global economic conditions, any of which could have a material adverse effect on our business.</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 full impact of COVID-19 on our financial condition and results of operations remains uncertain and will depend on future developments, such as the ultimate duration and scope of the outbreak (including the emergence or re-emergence of variants and their transmissibility, and the success of vaccination programs and treatments).</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>Risks Related to Our Industry</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>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. </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;">Our operating results could be negatively affected by the loss of revenue from one or more large customers. Our customers are not contractually obligated to purchase any fixed quantities of products, and they may stop placing orders with us at any time. We are subject to the risk of losing large customers or incurring significant reductions in sales to these customers.</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>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. </b></p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">We rely on a limited number of suppliers and contractors for the manufacture of our products. If we lose the services of these key suppliers and contractors, or if they are not willing or able to satisfy our requirements, finding substitute suppliers or contractors may be time-consuming and would affect our results of operations in the near term. Changes in business conditions, pandemics, wars, including the Russian invasion of Ukraine and world sanctions on Russia, Belarus, and related parties, governmental changes, and other factors beyond our control or which we do not presently anticipate could negatively affect our suppliers and contractors, as well as our ability to receive components.</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>There are risks associated with international manufacturing that could have a significant effect on our business.</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 subcontract the manufacturing of some of our goods to Asia and Mexico. These goods are manufactured pursuant to our specifications and quality assurance guidelines. Certain proprietary products are being made in Asia using materials supplied by us.</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;">
       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="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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We expect that a significant portion of our product sales will be derived from the sale of products for which we subcontract the manufacturing to Asia, but we cannot be certain that we will be able to maintain such subcontracting at current levels. If our ability to subcontract some of our manufacturing to Asia were to decline significantly, our business, results of operations and financial condition could be materially adversely affected. International manufacturing is subject to a number of risks, including the following:</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="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">changes in foreign government regulations and technical standards;</p> </td>
    </tr>

   </tbody>
  </table>
  <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="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">difficulty of protecting intellectual property;</p> </td>
    </tr>

   </tbody>
  </table>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;text-indent:9pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">requirements or preferences of foreign nations for the manufacture of domestic products;</p> </td>
    </tr>

   </tbody>
  </table>
  <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="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">the imposition of duties, border adjustment taxes or tariffs and other barriers to trade;</p> </td>
    </tr>

   </tbody>
  </table>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;text-indent:9pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">fluctuations in currency exchange rates relative to the U.S. dollar; and</p> </td>
    </tr>

   </tbody>
  </table>
  <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="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">political and economic instability.</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;">In particular, if the current COVID-19 outbreak continues and results in a continued prolonged period of travel, commercial and other similar restrictions, we could experience global supply disruptions. These restrictions have disrupted and could continue to disrupt our ability to receive manufactured products from China and may disrupt our suppliers located elsewhere who rely on products from China. If we experience additional supply disruptions, we may not be able to develop alternate sourcing quickly. Any disruption of our production schedule caused by an unexpected shortage of supplies even for a relatively short period of time could cause us to alter production schedules or suspend production entirely, which could cause a loss of revenues, which would adversely affect our 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>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.</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 success and competitiveness of our products depend in part upon our ability to protect our current and future technology, manufacturing processes and brand names, including Alpha Pro Tech, through a combination of patent, trademark, trade secret and unfair competition laws.</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 enter into confidentiality and non-disclosure of intellectual property agreements with certain of our employees, consultants and vendors and generally control access to and distribution of our proprietary information. Despite these precautions, it may be possible for a third party to copy or otherwise obtain and use our proprietary information without authorization or to develop similar information independently.</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;">Policing unauthorized use of intellectual property is difficult. The laws of other countries may afford little or no effective protection of our technology. We cannot assure you that the steps taken by us will prevent misappropriation of our technology or that agreements entered into for that purpose will be enforceable. In addition, litigation may be necessary in the future to enforce our intellectual property rights, to protect our trade secrets and to determine the validity and scope of the proprietary rights of others. Litigation may result in substantial costs and diversion of resources, which could have a material adverse effect on our business, results of operations and financial condition.</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>Our industry is highly competitive, which may negatively affect our ability to grow our customer base and generate sales.</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 markets for our products are intensely competitive. We currently experience competition from numerous companies in each of the markets in which we participate.</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;">Many of our competitors are more established, benefit from greater market recognition and have substantially greater financial, development, manufacturing and marketing resources than we have.</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;">If we do not compete successfully with respect to these or other companies, it could materially adversely affect our business, results of operations and financial condition.</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>The Company</b>&#x2019;<b>s results are affected by competitive conditions and customer preferences. </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;">Demand for the Company&#x2019;s products, which impacts revenue and profit margins, is affected by (i)&#xa0;the development and timing of the introduction of competitive products; (ii)&#xa0;the Company&#x2019;s response to downward pricing to stay competitive; (iii)&#xa0;changes in customer order patterns, such as changes in the levels of inventory maintained by customers and the timing of customer purchases; and (iv)&#xa0;changes in customers&#x2019; preferences for our products, including the success of products offered by our competitors and changes in customer designs for our competitors&#x2019; products that can affect the demand for the Company&#x2019;s products.</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;">
       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="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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>The Company</b>&#x2019;<b>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.</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;">Our ability to continually renew our pipeline of new products and to bring those products to market may be adversely affected by difficulties or delays in product development, such as the inability to identify viable new products, obtain adequate intellectual property protection or gain market acceptance of new products. There are no guarantees that new products will prove to be commercially successful. In addition, our product development and distribution activities are subject to inherent risks related to natural disasters, including earthquakes such as the one that occurred near our facility in Utah during 2020, which could disrupt our supply chain and impair our ability to manufacture or sell our 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;"><b>General Risks</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>Global economic conditions could adversely affect the Company</b>&#x2019;<b>s business and financial results. </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;">Unfavorable economic conditions, including the impact of recessions and general economic downturns in the United States and throughout the world, may negatively affect the Company&#x2019;s business and financial results.&#xa0; These economic conditions could negatively impact (i)&#xa0;demand for our products, (ii)&#xa0;the number and types of products sold, (iii)&#xa0;our ability to collect accounts receivable on a timely basis from certain customers and (iv) the ability of certain suppliers to fill our orders for raw materials or other goods and services. A prolonged recession could result in decreased revenue, margins and earnings. Additionally, tensions between Russia and Ukraine have escalated in recent months. This has led to economic sanctions imposed against Russia by the U.S. and certain European nations. Such sanctions may impact companies in many sectors and could lead to volatility of prices in the global energy industry. The extent and strength of the sanctions are still developing, and the corresponding effect on the Company remains uncertain.&#xa0;&#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;"><b>Our joint venture may present risks that are only present when third parties are involved.</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 currently participate in a joint venture in India and may in the future enter into joint ventures with other companies or enterprises in international markets, including joint ventures in which we may have a lesser degree of control over the business operations, which may expose us to additional operational, financial, legal or compliance risks. We may be dependent on a joint venture counterparty for product distribution, local market knowledge or other resources. If we are unable to effectively cooperate with joint venture partners, or any joint venture partner fails to meets its obligations under the joint venture arrangement, encounters financial difficulty, or elects to alter, modify or terminate the relationship, we may be unable to achieve our objectives and our results of operations may be negatively impacted thereby.</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>Security breaches and other disruptions to the Company</b>&#x2019;<b>s information technology infrastructure could interfere with the Company</b>&#x2019;<b>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</b>&#x2019;<b>s business and reputation.</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;">In the ordinary course of business, the Company relies on information technology networks and systems, some of which are managed by third parties, to process, transmit and store electronic information, and to manage or support a variety of business processes and activities. Additionally, the Company collects and stores sensitive data, including proprietary business information. Despite security measures and business continuity plans, the Company&#x2019;s information technology networks and infrastructure may be vulnerable to damage, disruptions or shutdowns due to attack by hackers, breaches, employee error or malfeasance, power outages, computer viruses, telecommunication or utility failures, systems failures, natural disasters or other catastrophic events. While we have not experienced any material losses related to cyber-attacks or information security breaches to date, any such event could result in legal claims or proceedings, liability or penalties under privacy laws, disruption in operations and damage to the Company&#x2019;s reputation, which could adversely affect the Company&#x2019;s business.</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>The Company</b>&#x2019;<b>s future results may be affected by various legal and regulatory proceedings and legal compliance risks. </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;">From time to time, the Company is subject to certain legal and regulatory proceedings in the ordinary course of business and otherwise. The outcome of these legal proceedings may differ from the Company&#x2019;s expectations because the outcomes of litigation, including regulatory matters, are often difficult to reliably predict. Various factors or developments could lead the Company to change current estimates of liabilities and related insurance receivables where applicable, or make such estimates for matters previously not susceptible to reasonable estimates, such as a significant judicial ruling or judgment, settlement, regulatory development or change in applicable law. A future adverse ruling, settlement or unfavorable development could result in charges that could have a material adverse effect on the Company&#x2019;s results of operations or cash flows in any particular period.</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>Our common stock price is volatile, which could result in substantial losses for individual shareholders.</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 market price of our common stock has been volatile, and we expect that it will continue to be volatile. In particular, our common stock may be subject to significant fluctuations in response to a variety of factors, including:</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="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">general economic and business conditions;</p> </td>
    </tr>

   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">changing market conditions in the industries that we serve;</p> </td>
    </tr>

   </tbody>
  </table>
  <p style="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;">
       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="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>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">monetary and fiscal policies, laws and regulations and other activities of government agencies and similar organizations;</p> </td>
    </tr>

   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">conditions in U.S. and global securities markets and other capital markets;</p> </td>
    </tr>

   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">actual or anticipated variations in quarterly operating results;</p> </td>
    </tr>

   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">failure to meet analyst predictions and projections;</p> </td>
    </tr>

   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">costs and other effects of legal and administrative proceedings, claims, settlements and judgments;</p> </td>
    </tr>

   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">additions or departures of key personnel;</p> </td>
    </tr>

   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">announcements of innovations or new services by us or our competitors;</p> </td>
    </tr>

   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">domestic and international health crises and pandemics;</p> </td>
    </tr>

   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">our sales of common stock or other securities in the future; and</p> </td>
    </tr>

   </tbody>
  </table>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="width:54pt;">&#xa0;</td>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#x25cf;</p> </td>
     <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">other events or factors, many of which are 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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In addition, our common stock price has recently experienced significant fluctuations due to speculation surrounding the effects of the COVID-19 outbreak on our operations. Such fluctuations may create conditions in which the market price of our common stock does not reflect an accurate measure of the long-term value of our common stock.</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;">Due to these factors, you may not be able to sell your stock at or above the price you paid for it, which could result in substantial losses.</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;"><b>Item 1B.&#xa0;&#xa0; Unresolved Staff Comments.</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;">None.</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;"><b>Item 2.&#xa0;&#xa0;&#xa0; Properties. </b></p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">The Company&#x2019;s principal executive office is located at 60 Centurian Drive, Suite 112, Markham, Ontario, Canada, L3R 9R2.&#xa0; The approximate monthly rent was $3,300 for 4,200 square feet under a lease which expired February 28, 2022, and we are in the process of negotiating a new lease at the same location, details of which have not been confirmed at the time of this filing.&#xa0; Working out of the principal executive office are the President and Chief Executive Officer, Lloyd Hoffman, and the Chief Financial Officer, Colleen McDonald.</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 manufacturing facility is located at 301 South Blanchard Street, Valdosta, Georgia.&#xa0; The average monthly rent is $37,500 for 165,400 square feet.&#xa0; This lease expires on January 1, 2024.&#xa0;</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 Disposable Protective Apparel segment has its cutting operation, warehousing and shipping facility at 1287 Fairway Drive, Nogales, Arizona.&#xa0; The approximate monthly rent is $28,900 for 60,000 square feet.&#xa0; This lease expires on December 31, 2022. The Disposable Protective Apparel segment also has two warehousing facilities, warehouse one is located at 1441 N. Industrial Park Drive, suite #B1, and warehouse two is located at &#xa0;1206 W. Industrial Park Drive, both in Nogales AZ.&#xa0; The approximate monthly rent is $3,600 and $6,000 for 7,140 square feet and 11,700 square feet respectively. Warehouse one&#x2019;s lease expires March 2022 and will not be renewed and warehouse two&#x2019;s lease expires in April 2022, and we do not intend to renew at this time. These leases related to additional temporary spaces needed due to higher inventory levels as a result of COVID-19.</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 Company manufactures its surgical face masks at a facility located at 236 North 2200 West, Salt Lake City, Utah. The monthly rent is $18,100 for 34,500 square feet.&#xa0; This lease expires on July 31, 2024.&#xa0;&#xa0;&#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 believes that these arrangements are suitable and adequate for its present needs and that other premises, if required, are readily available.</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;"><b>Item 3.&#xa0;&#xa0;&#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;">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;margin:0pt;"><b>Item 4.&#xa0;&#xa0;&#xa0; Mine Safety Disclosures.</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;">N/A</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;">
       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="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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>PART II</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;"><b>Item 5.&#xa0;&#xa0;&#xa0; Market For Registrant</b>&#x2019;<b>s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities.</b></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>MARKET 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;">The Company&#x2019;s common stock trades on the NYSE American (formerly the NYSE MKT, the NYSE Amex and the American Stock Exchange) (the &#x201c;NYSE American&#x201d;) under the symbol &#x201c;APT.&#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;">As of March 1, 2022, the Company&#x2019;s common stock was held by 109 shareholders of record and approximately 27,000 beneficial owners.</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;"><b>Dividends</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 holders of the Company&#x2019;s common stock are entitled to receive such dividends as may be declared by the Board of Directors of the Company from time to time to the extent that funds are legally available for payment thereof. The Company has never declared or paid any dividends on any of its outstanding shares of common stock. The Board of Directors&#x2019; current policy is not to pay dividends but rather to use available funds to repurchase common shares in accordance with the Company&#x2019;s repurchase program and to fund the continued development and growth of the Company. Consequently, the Company currently has no plans to pay cash dividends in 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>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 Securities Exchange Act of 1934, during the fourth quarter of 2021.</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: 30%;">&#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: 52%;"> <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: 30%; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 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 (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>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: 30%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">October 1 - 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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">20,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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">6.24</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">20,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;">283,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: 30%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">November 1 - 30, 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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">17,500</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">5.45</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">17,500</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times 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;">187,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: 30%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">December 1 - 31, 2021</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);">19,500</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);">5.57</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);">19,500</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;">2,078,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: 30%;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">57,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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">5.77</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
     <td style="width: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">57,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: right; 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;margin:0pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;">
   <tbody>
    <tr>
     <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">(1)</p> </td>
     <td style="vertical-align:top;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Pursuant to the Company&#x2019;s share repurchase program, on December 15, 2021, the Company announced that the Board of Directors had authorized a $2,000,000 expansion of the Company&#x2019;s existing share repurchase program.<b> </b>All of the shares included in this table were purchased pursuant to this program. Since the inception of the share repurchase program, the Company has authorized the repurchase of $44,520,000 of common stock, of which $2,078,000 was available to repurchase as of December 31, 2021. The stock repurchase plan expires on December 15, 2022.</p> </td>
    </tr>

   </tbody>
  </table>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><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 Annual Report on 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;margin:0pt;"><b>Item 6.&#xa0;&#xa0;&#xa0; (Reserved)</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;"><b>N/A</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;"><b>Item 7.&#xa0;&#xa0;&#xa0; Management</b>&#x2019;<b>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 consolidated financial statements and the notes to our consolidated financial statements, which appear elsewhere in this report.</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;">
       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="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>
  <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 Annual Report on Form 10-K 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 relating to potential acquisitions 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 caution readers that these forward-looking statements speak only as of the date hereof. The Company hereby expressly disclaims any obligation or undertaking to release publicly any updates or revisions to any such statements to reflect any change in the Company&#x2019;s expectations or any change in events, conditions or circumstances on which such statements are based. 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;">Any expectations based on these forward-looking statements are subject to risks and uncertainties. These risks and other factors include, but are not limited to, those listed below and under &#x201c;Risk Factors,&#x201d; and elsewhere in this report. 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;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 Annual Report on Form 10-K as a &#x201c;smaller reporting company&#x201d; (as defined in Rule 12b-2 of the Securities Exchange Act of 1934, as amended) based on our public float (the aggregate market value of our common equity held by non-affiliates of the Company) as of the last business day of our second fiscal quarter of 2021. 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 and necessary to aid in an understanding of the current consolidated financial position, changes in financial position and results of operations of the Company.</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>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. Our estimates are subject to uncertainties associated with the ongoing COVID-19 pandemic. 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 2 &#x2013; &#x201c;Summary of Significant Accounting Policies&#x201d; in the notes to our consolidated financial statements in Item 8. Our critical accounting policies and estimates include the following:</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><b>Accounts Receivable: </b>Accounts receivable are recorded at the invoice amount and do not bear interest. The general terms for receivables is net 30 days.&#xa0; The allowance for doubtful accounts is the Company&#x2019;s best estimate of the amount of probable credit losses in the Company&#x2019;s existing accounts receivable; however, changes in circumstances relating to accounts receivable may result in a requirement for additional allowances in the future.&#xa0; The Company determines the allowance based upon historical write-off experience and known conditions about customers&#x2019; current ability to pay.&#xa0; Account balances are charged against the allowance when the potential for recovery is considered remote. For new customers with no order history with the Company we may require advance payments to reduce our credit risk. In 2021 and 2020, we recorded approximately $0 and $2,000, respectively, in charge-offs against the allowance.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><b>Inventories:</b>&#xa0; Inventories include freight-in, materials, labor and overhead costs and are stated at the lower of cost or net realizable value.&#xa0; Allowances are recorded for slow-moving, obsolete or unusable inventory. We assess our inventory for estimated obsolescence or unmarketable inventory and write down the difference between the cost of inventory and the estimated net realizable value based upon assumptions about future sales and supply on-hand, if necessary. If actual market conditions are less favorable than those projected by management, additional inventory write-downs may be required. In 2021 and 2020, we recorded approximately $376,000 and $114,000, respectively, in write-downs of inventory.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><b>Leases: </b>We determine if an arrangement is a lease at inception. Operating leases are included as right-of-use (&#x201c;ROU&#x201d;) assets and lease liabilities on our consolidated balance sheet. ROU assets and lease liabilities are recognized based on the present value of the future minimum lease payments over the lease term at the commencement date. Our leases do not provide an implicit rate, and, therefore, we estimate our collateralized borrowing rate under similar terms based on the information available at the commencement date in determining the present value of future minimum lease payments. Our lease terms may include options to extend or terminate the lease when it is reasonably certain that we will exercise such options. We do not record leases on our consolidated balance sheet with a term of one year or less. We elected a package of transition practical expedients, which included not reassessing whether any expired or existing contracts are or contain leases, not reassessing the lease classification of expired or existing leases, and not reassessing initial direct costs for existing leases. We also elected a practical expedient to not separate lease and non-lease components. We did not elect the practical expedient to use hindsight in determining our lease terms or assessing impairment of our ROU assets. As of December 31, 2021, we have $2.6 million in ROU assets.</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;">
       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="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>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><b>Revenue Recognition:</b> 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 at the time products are delivered to the 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 labelling. The Company has determined that, as of December 31, 2021, it had no material contract assets, and concluded that its contract liabilities (primarily rebates) had the right of offset against customer receivables. As of December 31, 2021, the Company had no contract liabilities as compared to $209,000 as of December 31, 2020 which contract liabilities were a result of customer advance payments of orders connected to the COVID-19 pandemic (see &#x201c;Impact of the Novel Coronavirus (COVID-19)&#x201d; below).</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 Returns, Rebates and Allowances:</b> Sales are reduced for any anticipated sales returns, rebates and allowances based on historical experience. Since our return policy is only 90 days and our products are not generally susceptible to external factors such as technological obsolescence or significant changes in demand, we are able to make a reasonable estimate for returns. We offer end-user product specific and sales volume rebates to select distributors. Our rebates are based on actual sales and are accrued monthly.</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>Stock</b>-<b>Based Compensation:</b> The Company accounts for stock-based awards using Financial Accounting Standards Board (&#x201c;FASB&#x201d;) Accounting Standards Codification (&#x201c;ASC&#x201d;) 718, Stock Compensation<i>.</i> ASC 718 requires companies to record compensation expense for the value of all outstanding and unvested share-based payments, including employee stock options and similar awards.</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 fair values of stock option grants are determined using the Black-Scholes option-pricing model and are based on the following assumptions: expected stock price volatility based on historical data and management&#x2019;s expectations of future volatility, risk-free interest rates from published sources, expected term based on historical data, and no dividend yield, as the Board of Directors currently has no plans to pay dividends in the foreseeable future. The Company accounts for option forfeitures as they occur. The Black-Scholes option-pricing model was developed for use in estimating the fair value of traded options that have no vesting restrictions and that are fully transferable. In addition, the option-pricing model requires the input of highly subjective assumptions, including expected stock price volatility. Our stock options have characteristics significantly different from those of traded options, and changes in the subjective input assumptions can materially affect the fair value of such options. In 2021 and 2020, we recorded $315,000 and $375,000, respectively, in compensation expense for share-based awards,</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 synthetic roof underlayment as well as other woven material; and (ii) the Disposable Protective Apparel segment, consisting of disposable protective garments (including shoecovers, bouffant caps, coveralls, gowns, frocks and lab coats), face masks and face shields.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Our target markets include pharmaceutical manufacturing, bio-pharmaceutical manufacturing and medical device manufacturing, lab animal research, high technology electronics manufacturing (which includes the semi-conductor market), medical and dental distributors, and construction, building supply and roofing distributors.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <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>
  <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="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>
  <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: &quot;Times New Roman&quot;; 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 the beginning of 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: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; 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, &#xa0;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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">We are continuing to serve our customers while taking every precaution to provide a safe work environment for our employees. We have enacted enhanced operating protocols to assure the safety and well-being of our employees, and otherwise adjusted work schedules to maximize our capacity while adhering to recommended precautions such as social distancing. We believe that we may have to take further actions that we determine are in the best interests of our employees or as required by federal, state, or local authorities. Although we will continue to adhere to restrictions imposed by local governments in the jurisdictions in which we operate, government regulations have impacted workforce availability and expense in certain of the Company&#x2019;s manufacturing facilities, and we expect this to continue for some time. While this remains a fluid situation, all of our U.S. manufacturing sites are currently operating at or above normal production rates.&#xa0;</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;">COVID-19 has 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.&#xa0; Additionally, we expect that demand for our Building Supply segment products could be negatively impacted if we experience a decrease in housing starts and increased uncertainty in the housing market and the economy in general, although to date we have not experienced any material negative impact in our 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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">The impact of the COVID-19 pandemic continues to unfold. Overall, the increase in sales of our PPE products resulting from the pandemic had a positive impact on our 2020 and 2021 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. Future developments include 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 and rapidly 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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Management will continue to carefully monitor the current dynamic market conditions and work to respond to them swiftly and effectively.</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="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>
  <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;text-indent:9pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The following table sets forth certain operational data as a percentage of sales for the years 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%; 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; 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>2021</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>2020</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: 66%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 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: 14%; 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: 14%; 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-top: 0pt; margin-bottom: 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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">36.9</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">49.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(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-top: 0pt; margin-bottom: 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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">24.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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">17.7</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-top: 0pt; margin-bottom: 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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">11.5</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">30.8</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
    </tr>

    <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
     <td style="font-family: Times New Roman; font-size: 10pt;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">12.4</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">31.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-top: 0pt; margin-bottom: 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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">9.8</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
     <td style="width: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">26.2</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;margin:0pt;"><b>Fiscal Year 2021 Compared to Fiscal Year 2020 </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 year ended December 31, 2021 decreased to $68,637,000, from $102,700,000 for the year ended December 31, 2020, representing a decrease of $34,063,000, or 33.2%. This decrease consisted of decreased sales in the Disposable Protective Apparel segment of $40,372,000 and increased sales in the Building Supply segment of $6,309,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>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 year ended December 31, 2021 decreased by $40,372,000, or 56.0%, to $31,748,000, compared to $72,120,000 for 2020. This segment decrease was due to a 3.5% increase in sales of disposable protective garments, an 80.0% decrease in sales of face masks and a 68.0% decrease in sales of face shields, all primarily due to reduced customer demand in 2021 compared to a surge in demand in 2020 associated with the pandemic.</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 year ended December 31, 2021 was approximately 63% for disposable protective garments, 26% for face masks and 11% for face shields. This sales mix is compared to approximately 27% for disposable protective garments, 58% for face masks and 15% for face shields for the year ended December 31, 2020.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Sales for the disposable protective garments increased by 3.5% in 2021, primarily due to record sales in the first and second quarters of 2021 resulting from strong orders received from our major international channel partner in 2020 in response to COVID-19. Sales in the second half of 2021 were negatively affected as inventory levels in the supply chain primarily with our partner mentioned above, were higher than historical. Although sales were down in the latter half of 2021 and more in line with pre-pandemic levels, this partner&#x2019;s sales to its end users for the same period are much higher than pre-pandemic levels.</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 decrease in face mask sales in 2021, primarily our proprietary N-95 Particulate Respirator face mask, resulted from very significant record breaking customer demand associated with the COVID-19 pandemic in 2020. The decrease in face shield sales in 2021 was also due to the decline in demand associated with the COVID-19 pandemic. Although face mask and face shield sales were down in 2021, they were higher than any other year on record, with the exception of the past pandemics in 2020 (COVID-19) and 2009 (H1N1). Due to COVID-19 variants and other challenges related to efforts to reduce the duration, scope and severity of the pandemic, sales of face masks and face shields are expected to remain higher than pre-pandemic levels in the short term, but it is uncertain how long this will continue.</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;">As the pandemic continues, our partnerships within our authorized distributor community in this segment remains strong.&#xa0; Together, we are navigating what is still a delicate balance of in-person and virtual opportunities to market our disposable protective garments, face mask and face shield portfolio to current and new end-customers.&#xa0; Additionally, we are working to support our end-customers in concert with our distributor partners until such time that the pandemic is behind us, whether it be through virtual selling and product training, practical face-to-face meetings&#xa0; or via small off-campus gatherings.</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 year ended December 31, 2021 increased by $6,309,000, or 20.6%, to a record $36,889,000, compared to $30,580,000 for the year ended December 31, 2020. The Building Supply segment increase was primarily due to an increase in sales of synthetic roof underlayment of 25.9%, an increase in sales of housewrap and accessories of 19.7% and flat sales of other woven material compared to 2020.</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 sales mix of the Building Supply segment for the year ended December 31, 2021 was approximately 50% for synthetic roof underlayment, 43% for housewrap and accessories and 7% for other woven material. This compared to approximately 48% for synthetic roof underlayment, 43% for housewrap and accessories and 9% for other woven material for the year ended December 31, 2020. Our synthetic roof underlayment product line includes REX SynFelt&#xae;, REX TECHNOply&#xae; and TECHNO SB&#xae;; our housewrap product line consists of REX Wrap&#xae;, REX Wrap&#xae; Plus and REX Wrap Fortis&#xae;; and our housewrap accessories product line consists of REXTREME Window and Door Flashing and REX&#x2122; Seam tape.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Building Supply segment sales were a record for the year ended December of 2021, with continued significant growth due to strong demand for both our synthetic roof underlayment and housewrap products. Synthetic roof underlayment sales were a record and increased by 25.9% compared to 2020 due to the increase in inventory requirements at the dealer level, as well as the expansion of new home construction. Growth in sales of our synthetic roof underlayment products in 2021 was primarily due to robust sales of our TECHNO SB&#xae;25 product line. The housewrap line of products experienced a 19.7% increase in 2021, which was also a record due to growth in new market share as well as high demand for new home construction. Our system of selling housewrap with associated accessories is becoming increasingly accepted in the market.</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="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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company has committed to increasing production capacity in our Building Supply segment by investing approximately $4.0 million in new equipment, a part of which became operational in the latter part of the third quarter of 2021. As a result of delays in the supply chain the most expensive piece of equipment, for which an approximately $1,000,000 balance remains outstanding, has had a further delay. This equipment was originally anticipated to arrive in the latter part of the fourth quarter of 2021 and is now expected in the latter part of the second quarter of 2022 and is expected to be operational in the third quarter 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;">Management is encouraged by the current demand for its Building Supply products and anticipates strong continued growth in 2022. The company has continued to enjoy increased sales by utilizing a strategic approach to adding additional dealers through aggressive sales strategies. Being vertically integrated and having control of our manufacturing, unlike most of our competitors, aided in minimizing the effects of worldwide supply chain issues experience during 2021. As discussed above, the synthetic roofing market has remained strong throughout 2021 although there could be some retraction heading into 2022. By adding dealers, distribution channels and products in the roofing sector during 2021, we remain confident in maintaining our sales growth into 2022. We expect our housewrap sales will continue to grow with new home construction remaining high, as well as with our ability to deliver products in a timely fashion by utilizing our vertically integrated manufacturing capabilities. This coupled with our growing distribution channels was the backbone of our sales growth during 2021.</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 $25,184,000, or 49.9%, to $25,298,000 for the year ended December 31, 2021, from $50,482,000 for the year ended December 31, 2020. The gross profit margin was 36.9% for the year ended December 31, 2021, compared to 49.2% for the year ended December 31, 2020. Gross profit margin in 2021 was similar to pre-pandemic levels. The gross profit margin was negatively affected in 2021 as a result of changes in product mix as the need for face masks and face shields, which have a higher gross profit margin than our other products, declined from the surge in customer demand in 2020 as a result of the COVID-19 pandemic, as well as increased raw material costs and ocean freight and other transportation costs.</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 believes that gross profit margin likely will continue to be negatively affected by the recent significant increases in ocean freight and other transportation costs. Additionally, our portfolio of products has been affected by much higher than normal raw material costs. In the current environment, cost increases may rise more rapidly than our sales prices, which could further decrease gross profit margin.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Selling, General and Administrative Expenses.</b> Selling, general and administrative expenses decreased by $1,617,000, or 8.9%, to $16,554,000 for the year ended December 31, 2021, from $18,171,000 for the year ended December 31, 2020. However, as a percentage of net sales, selling, general and administrative expenses increased to 24.1% for the year ended December 31, 2021, down from 17.7% for 2020, 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>
  <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 year ended December 31, 2021 was as follows: Disposable Protective Apparel was down $813,000, or 12.9%; Building Supply was up $273,000, or 5.1%; and corporate unallocated expenses were down $1,077,000, or 16.5%. The decrease in Disposable Protective Apparel segment expenses was primarily related to decreased employee compensation, commission and general factory expenses. The increase in Building Supply segment expenses was related to increased employee compensation, commission and travel expenses, partially offset by decreased general office expenses. The decrease in corporate unallocated expenses was primarily due to decreased accrued bonuses and professional fees, partially offset by increased public company expenses, insurance expenses and general office expenses.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In accordance with the terms of his employment agreement, the Company&#x2019;s current President and Chief Executive Officer is entitled to an annual bonus equal to 5% of the pre-tax profits of the Company, excluding bonus expense, up to a maximum of $1.0 million. A bonus amount of $447,000 was accrued for the year ended December 31, 2021, compared to $1,000,000 for the year ended December 31, 2020.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Depreciation and Amortization.</b> Depreciation and amortization expense increased by $88,000, or 12.1%, to $817,000 for the year ended December 31, 2021, from $729,000 for the year ended December 31, 2020. The increase was primarily attributable to increased depreciation for machinery and equipment in the Building Supply segment and increased corporate depreciation related to computer technology.</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 from Operations.</b> Income from operations decreased by $23,655,000, or 74.9%, to $7,927,000 for the year ended December 31, 2021, compared to $31,582,000 for the year ended December 31, 2020. The decreased income from operations was primarily due to a decrease in gross profit of $25,184,000 and an increase in depreciation and amortization expense of $88,000, partially offset by a decrease in selling, general and administrative expenses of $1,617,000. Income from operations as a percentage of net sales for the year ended December 31, 2021 was 11.5%, compared to 30.8% for the same period of 2020.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;"><b>Other Income.</b> Other income decreased by $93,000, or 14.0%, to $573,000 for the year ended December 31, 2020, from $666,000 for the year ended December 31, 2020. The decrease was primarily due to a decrease in equity in income of unconsolidated affiliate of $139,000 and a decrease in interest income of $16,000, partially offset by a loss on marketable securities in 2020 compared to no gain or loss on marketable securities during the same period of 2021, for a net increase of $62,000.</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="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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Other income consisted of equity in income of unconsolidated affiliate of $571,000 and interest income of $2,000 for the year ended December 31, 2021. Other income consisted of equity in income of unconsolidated affiliate of $710,000, a loss on marketable securities of $62,000 and interest income of $18,000 for the year ended December 31, 2020.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Income before Provision for Income Taxes.</b> Income before provision for income taxes for the year ended December 31, 2021 was $8,500,000, compared to income before provision for income taxes of $32,248,000 for 2020, representing a decrease of $23,748,000, or 73.6%. This decrease in income before provision for income taxes was due to a decrease in income from operations of $23,655,000 and a decrease in other income of $93,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 year ended December 31, 2021 was $1,744,000, compared to $5,360,000 for 2020. The provision for income taxes for 2020 included an estimated nonrecurring tax benefit of $2.0 million in the first quarter of 2020 as a result of the exercise of disqualified Incentive Stock Options and the exercise of Non-Qualified Stock Options. The estimated effective tax rate was 20.5% for the year ended December 31, 2021, compared to 16.6% for the year ended December 31, 2020. Excluding the estimated nonrecurring tax benefit of $2.0 million, the estimated effective tax rate was 22.2% for the year ended December 31, 2020. 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 year ended December 31, 2021 was $6,756,000 compared to net income of $26,888,000 for the year ended December 31, 2020, representing a decrease of $20,132,000, or 74.9%. The decrease in net income was largely associated with the unprecedented surge in product demand due to the COVID-19 pandemic in 2020. The net income decrease comparing the years ended December 31, 2021 and 2020 was due to a decrease in income before provision for income taxes of $23,748,000, partially offset by a decrease in provision for income taxes of $3,616,000. As mentioned above, a tax benefit from stock options exercised positively impacted net income in the first quarter of 2020 by an estimated $2.0 million. Net income as a percentage of net sales for the year ended December 31, 2021 was 9.8%, and net income as a percentage of net sales for 2020 was 26.2%. Basic earnings per common share for the years ended December 31, 2021, and 2020 were $0.51 and $2.00, respectively. Diluted earnings per common share for the years ended December 31, 2021 and 2020 were $0.50 and $1.92, respectively. Diluted earnings per common share prior to COVID-19 for the years ended December 31, 2019 and 2018 were $0.23 and $0.26, respectively.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;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 December 31, 2021, the Company had cash of $16,307,000 and working capital of $50,331,000. As of December 31, 2021, the Company&#x2019;s current ratio (current assets/current liabilities) was 20:1, compared to a current ratio of 9:1 as of December 31, 2020. Cash decreased by 30.0%, or $6,985,000, to $16,307,000 as of December 31, 2021, compared to $23,292,000 as of December 31, 2020, and working capital increased by $811,000 from $49,451,000 as of December 31, 2020. The decrease in cash from December 31, 2021 was due to cash used in operating activities of $480,000, cash used in investing activities of $2,524,000 and cash used in financing activities of $3,981,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;">We previously had a $3,500,000 credit facility with Wells Fargo Bank, consisting of a line of credit with interest at prime plus 0.5%. This credit line expired in May 2020, and the Company decided not to renew. The Company has continued its relationship with Wells Fargo, with the exception of the line of credit. The Company determined that the credit line is not necessary at this time, as it had not been used in several years, and the Company currently has sufficient funding from 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;">Net cash used by operating activities of $480,000 for the year ended December 31, 2021 was due to net income of $6,756,000, impacted primarily by the following: stock-based compensation expense of $315,000, depreciation and amortization expense of $817,000, equity in income of unconsolidated affiliate of $571,000, operating lease expense net of accretion of $887,000, an increase in deferred income taxes of $228,00, a decrease in accounts receivable of $4,257,000, an increase in prepaid expenses of $856,000, an increase in inventory of $8,220,000, a decrease in accounts payable and accrued liabilities of $2,998,000, a decrease in customer advance payments of $209,000 and a decrease in lease liabilities of $886,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;">Accounts receivable decreased by $4,257,000, or 47.1%, to $4,780,000 as of December 31, 2021, from $9,037,000 as of December 31, 2020. The decrease in accounts receivable was related to decreased sales. The number of days that sales remained outstanding as of December 31, 2021, calculated by using an average of accounts receivable outstanding and annual revenue, was 24 days, compared to 34 days as of December 31, 2020.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Inventory increased by $8,220,000, or 49.1%, to $24,969,000 as of December 31, 2021, from $16,749,000 as of December 31, 2020. The increase was primarily due to an increase in inventory for the Disposable Protective Apparel segment of $4,737,000, or 41.2%, to $16,236,000 and an increase in inventory for the Building Supply segment of $3,483,000, or 66.3%, to $8,733,000. The increase in the Disposable Protective Apparel segment inventory was primarily due to an increase mask inventory and the increase in the Building Supply segment inventory was primarily due to expected increased sales as well as to allow for supply chain delays.</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 increased by $856,000, or 14.1%, to $6,943,000 as of December 31, 2021, from $6,087,000 as of December 31, 2020. The increase was primarily due to prepayments for tax payments, partially offset by decreased prepaid 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 December 31, 2021 decreased by $887,000 to $2,648,000 from $3,535,000 as of December 31, 2020 as a result of amortization of the balance.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGFTR" style="text-align: center; width: 100%">
    <div class="hf-row">
     <div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">
       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="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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Lease liabilities as of December 31, 2021 decreased by $886,000 to $2,700,000 from $3,586,000 as of December 31, 2020. The recording of the lease liabilities was the result of adopting ASC 842, Leases. The recording of the lease liabilities was the result of adopting ASC 842, Leases. 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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Accounts payable and accrued liabilities as of December 31, 2021 decreased by $2,998,000, or 62.8%, to $1,778,000, from $4,776,000 as of December 31, 2020. The decrease was primarily due to a decrease in accounts payable as a result of decreased raw material purchases, a decrease in accrued liabilities, and a decrease in accrued bonuses.</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;">Customer advance payment of orders as of December 31, 2021 was $0, which was the result of no customer deposits for future dated PPE orders in response to the COVID-19 pandemic, compared to $209,000 as of December 31, 2020.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Net cash used in investing activities was $2,524,000 for the year ended December 31, 2021, compared to net cash used in investing activities of $862,000 for the same period of 2020. Investing activities for the year ended December 31, 2021 consisted of the purchase of property and equipment of $2,524,000. Investing activities for the year ended December 31, 2020 consisted of the purchase of property and equipment of $1,135,000 for both the Building Supply segment and the Disposable Apparel Products segment and proceeds from the sale of marketable securities of $273,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 financing activities was $3,981,000 for the year ended December 31, 2021, compared to net cash used in financing activities of $668,000 for the same period of 2020. Net cash used in financing activities for the year ended December 31, 2021 resulted from the payment of $4,408,000 for the repurchase of common stock, partially offset by proceeds of $427,000 from the exercise of stock options. Net cash used in financing activities for the year ended December 31, 2020 resulted from the payment of $2,666,000 for the repurchase of common stock, mainly offset by proceeds of $1,998,000 from the exercise of stock options.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">As of December 31, 2021, we had $2,078,000 available for additional stock purchases under our stock repurchase program. For the year ended December 31, 2021, we repurchased 439,000 shares of common stock at a cost of $4,408,000. As of December 31, 2021, we had repurchased a total of 18,549,917 shares of common stock at a cost of $42,442,000 through our repurchase program. We retire all stock upon repurchase. Future repurchases are expected to be funded from cash on hand and cash flows from operating activities</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We believe that our current cash balance 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;">We have committed to increasing production capacity in our Building Supply segment by investing approximately $4.0 million in new equipment, a part of which became operational in the latter part of the third quarter of 2021. As a result of delays in the supply chain the most expensive piece of equipment, for which an approximately $1,000,000 balance remains outstanding, has had a further delay. This amount has not been prepaid and will be paid in full upon delivery of equipment. The equipment was originally anticipated to arrive in the latter part of the fourth quarter of 2021 and is now expected in the latter part of the second quarter of 2022 and is expected to be operational in the third quarter of 2022. The Company expects to fund the remaining balance from cash flow from 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>Related Parties</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 2021, the Company had no related party transactions, other than the Company&#x2019;s transactions with its non-consolidated affiliate, Harmony. See Note 7 &#x2013; &#x201c;Equity Investments in Unconsolidated Affiliate&#x201d; in the notes to our consolidated financial statements in Item 8 for more information on our relationship with our non-consolidated affiliated Harmony Plastics Private 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;"><b>New Accounting Standards </b></p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">In December 2019, the FASB issued ASU No. 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes, which is intended to simplify various aspects related to accounting for income taxes. ASU 2019-12 removes certain exceptions to the general principles in Topic 740 and also clarifies and amends existing guidance to improve consistent application. This guidance is effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2020, with early adoption permitted.&#xa0; Adoption of the new standard in January 2021, did not have a material impact on our 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;">Management periodically reviews new accounting standards that are issued. Management has not identified any other new standards that it believes merit further discussion at this time.</p>
  <p style="font-family:'Times New Roman';font-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 7A.&#xa0;&#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;">We subcontract the manufacturing of products in Sri Lanka, China and, to a lesser extent, in Mexico, and have a joint venture in India. In addition, our principal executive office, with 18 employees, is located in Canada. We do not believe that we have a material foreign currency exposure due to the fact that our purchase agreements with companies in Sri Lanka, China, India and Mexico are settled in U.S. dollars. In addition, all sales transactions are in U.S. dollars. In Canada, our foreign currency exposure is not material due to the fact that we do not conduct manufacturing operations in Canada. Our exposure is limited to payroll expenses in the Canadian branch office.</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 do not expect any significant effect on our consolidated results of operations from inflation, interest or currency rate fluctuations. We do not hedge interest rates or foreign exchange risks.</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="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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;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;"><b>Item 8.&#xa0;&#xa0;&#xa0; Financial Statements and Supplementary Data.</b></p>
  <table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;">
   <tbody>
    <tr>
     <td style="width: 95%;">&#xa0;</td>
     <td style="width: 5%; text-align: right;">Page</td>
    </tr>

    <tr>
     <td style="width: 95%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
    </tr>

    <tr style="background-color: rgb(204, 238, 255);">
     <td style="width: 95%;"> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">Management&#x2019;s Annual Report on Internal Control over Financial Reporting</p> </td>
     <td style="width: 5%; text-align: right;">22</td>
    </tr>

    <tr style="background-color: rgb(255, 255, 255);">
     <td style="width: 95%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
    </tr>

    <tr style="background-color: rgb(204, 238, 255);">
     <td style="width: 95%;">Reports of Independent Registered Public Accounting Firm (PCAOB ID <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="dei:AuditorFirmId">270</ix:nonNumeric>)</td>
     <td style="width: 5%; text-align: right;">23</td>
    </tr>

    <tr style="background-color: rgb(255, 255, 255);">
     <td style="width: 95%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
    </tr>

    <tr style="background-color: rgb(204, 238, 255);">
     <td style="width: 95%;">Consolidated Financial Statements:</td>
     <td style="width: 5%;">&#xa0;</td>
    </tr>

    <tr style="background-color: rgb(255, 255, 255);">
     <td style="width: 95%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
    </tr>

    <tr style="background-color: rgb(204, 238, 255);">
     <td style="width: 95%; padding-left: 18pt;">Consolidated Balance Sheets as of December 31, 2021 and 2020</td>
     <td style="width: 5%; text-align: right;">24</td>
    </tr>

    <tr style="background-color: rgb(255, 255, 255);">
     <td style="width: 95%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
    </tr>

    <tr style="background-color: rgb(204, 238, 255);">
     <td style="width: 95%; padding-left: 18pt;">Consolidated Statements of Comprehensive Income for the Years Ended December 31, 2021 and 2020</td>
     <td style="width: 5%; text-align: right;">25</td>
    </tr>

    <tr style="background-color: rgb(255, 255, 255);">
     <td style="width: 95%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
    </tr>

    <tr style="background-color: rgb(204, 238, 255);">
     <td style="width: 95%; padding-left: 18pt;">Consolidated Statements of Shareholders&#x2019; Equity for the Years Ended December 31, 2021 and 2020</td>
     <td style="width: 5%; text-align: right;">26</td>
    </tr>

    <tr style="background-color: rgb(255, 255, 255);">
     <td style="width: 95%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
    </tr>

    <tr style="background-color: rgb(204, 238, 255);">
     <td style="width: 95%; padding-left: 18pt;">Consolidated Statements of Cash Flows for the Years Ended December 31, 2021 and 2020</td>
     <td style="width: 5%; text-align: right;">27</td>
    </tr>

    <tr style="background-color: rgb(255, 255, 255);">
     <td style="width: 95%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
    </tr>

    <tr style="background-color: rgb(204, 238, 255);">
     <td style="width: 95%; padding-left: 18pt;">Notes to Consolidated Financial Statements</td>
     <td style="width: 5%; text-align: right;">29</td>
    </tr>

   </tbody>
  </table>
  <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;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:18pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">All schedules are omitted because they are not applicable or the required information is shown in the consolidated financial statements or notes thereto.</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="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>
  <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Management</b>&#x2019;<b>s Report on 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;">Our management is responsible for establishing and maintaining adequate internal control over financial reporting. Internal control over financial reporting is defined in Rule 13a-15(f) and Rule 15d-15(f) under the Securities Exchange Act of 1934 as a process designed by, or under the supervision of, our principal executive and principal financial officers, and effected by our Board of Directors, management and other personnel, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with U.S. generally accepted accounting principles and includes those policies and procedures that:</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;">&#x2022; pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect our transactions and dispositions of our assets;</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;">&#x2022; provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with U.S. generally accepted accounting principles, and that our receipts and expenditures are being made only in accordance with authorizations of management and directors; and</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;">&#x2022; provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use or disposition of our assets that could have a material effect on the 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;">Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate.</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 principal executive and principal financial officers, we assessed, as of December 31, 2021, the effectiveness of our internal control over financial reporting. This assessment was based on criteria established in accordance with the Internal Control-Integrated Framework issued by the Committee of Sponsoring Organizations of the Treadway Commission (2013 framework). Based on this assessment, our management concluded that our internal control over financial reporting was effective as of December 31, 2021.</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;">
     22
   </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%">
     &#xa0;
   </div>
  </div>
  <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: center; margin: 0pt;">REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">To the Board of Directors and<br /> Stockholders of Alpha Pro Tech, Ltd.</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Opinions on the Consolidated Financial Statements and Internal Control over Financial Reporting</i></b></p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">We have audited the accompanying consolidated balance sheets of Alpha Pro Tech, Ltd. and subsidiaries (collectively, the Company) as of December 31, 2021 and 2020, the related consolidated statements of income, comprehensive income, stockholders&#x2019; equity, and cash flows for each of the years in the two-year period ended December 31, 2021, and the related notes (collectively referred to as the financial statements). We also have audited the Company&#x2019;s internal control over financial reporting as of December 31, 2021, based on criteria established in <i>Internal Control</i>&#x2014;<i>Integrated Framework (2013)</i> issued by the Committee of Sponsoring Organizations of the Treadway Commission (COSO).</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">In our opinion, the financial statements referred to above present fairly, in all material respects, the financial position of the Company as of December 31, 2021 and 2020, and the results of its operations and its cash flows for each of the years in the two-year period ended December 31, 2021, in conformity with accounting principles generally accepted in the United States of America. Also, in our opinion, the Company maintained, in all material respects, effective internal control over financial reporting as of December 31, 2021, based on criteria established in <i>Internal Control</i>&#x2014;<i>Integrated Framework (2013)</i> issued by COSO.</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Basis for Opinion</i></b></p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">The Company&#x2019;s management is responsible for these financial statements, for maintaining effective internal control over financial reporting, and for its assessment of the effectiveness of internal control over financial reporting included in the accompanying Management&#x2019;s Report on Internal Control over Financial Reporting. Our responsibility is to express an opinion on the Company&#x2019;s financial statements and an opinion on the Company&#x2019;s internal control over financial reporting based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board (United States) (PCAOB) and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audits to obtain reasonable assurance about whether the financial statements are free of material misstatement, whether due to error or fraud, and whether effective internal control over financial reporting was maintained in all material respects.</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Our audits of the financial statements included performing procedures to assess the risks of material misstatement of the financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the consolidated financial statements. Our audit of internal control over financial reporting included obtaining an understanding of internal control over financial reporting, assessing the risk that a material weakness exists, and testing and evaluating the design and operating effectiveness of internal control based on the assessed risk. Our audits also included performing such other procedures as we considered necessary in the circumstances. We believe that our audits provide a reasonable basis for our opinions.</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Definition and Limitations of Internal Control over Financial Reporting</i></b></p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">A company&#x2019;s internal control over financial reporting is a process designed 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. A company&#x2019;s internal control over financial reporting includes those policies and procedures that (1) pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect the transactions and dispositions of the assets of the company; (2) provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with generally accepted accounting principles, and that receipts and expenditures of the company are being made only in accordance with authorizations of management and directors of the company; and (3) provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use, or disposition of the company&#x2019;s assets that could have a material effect on the financial statements.</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate.</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Critical Audit Matters</i></b></p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Critical audit matters are matters arising from the current period audit of the financial statements that were communicated or required to be communicated to the audit committee and that: (1) relate to accounts or disclosures that are material to the financial statements and (2) involved our especially challenging, subjective, or complex judgments. We determined that there are no critical audit matters.</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
  <table cellpadding="0" cellspacing="0" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 100%; margin-left: 0pt; margin-right: 0pt;">
   <tbody>
    <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
     <td colspan="1" style="vertical-align: top; width: 100.7%; 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;">/s/ <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="dei:AuditorName">Tanner LLC</ix:nonNumeric></p> </td>
    </tr>

    <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
     <td style="vertical-align: top; width: 82.3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
    </tr>

    <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
     <td colspan="1" style="vertical-align: top; width: 100.7%; 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;">We have served as the Company&#x2019;s auditor since 2011.</p> </td>
    </tr>

    <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
     <td style="vertical-align: top; width: 82.3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
    </tr>

    <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
     <td colspan="1" style="vertical-align: top; width: 100.7%; 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;"><ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="dei:AuditorLocation">Lehi, Utah</ix:nonNumeric></p> </td>
    </tr>

    <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
     <td style="vertical-align: top; width: 82.3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
    </tr>

    <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
     <td style="vertical-align: top; width: 82.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; margin: 0pt;">March 11, 2022</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="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="text-align: left; width: 100%">
     &#xa0;
   </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: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
  <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
  <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Consolidated Balance Sheets</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;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>December 31,</b></b></b></p> </td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td colspan="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><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>2021</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>2020</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%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Assets</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;"><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-top: 0pt; margin-bottom: 0pt;">Current assets:</p> </td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: Times New Roman; font-size: 10pt;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754392" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" format="ixt:numdotdecimal" decimals="INF">16,307,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="c81754393" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" format="ixt:numdotdecimal" decimals="INF">23,292,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-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Accounts receivable, net of allowance for doubtful accounts of $<span style="-sec-ix-hidden:c81754396">64,000</span> as of December 31, 2021 and $<span style="-sec-ix-hidden:c81754397">71,000</span> as of December 31, 2020</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="c81754394" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:AccountsReceivableNetCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">3,397,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="c81754395" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:AccountsReceivableNetCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">8,132,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754398" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:AccountsReceivableRelatedPartiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">1,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;">&#xa0;</td><td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754399" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:AccountsReceivableRelatedPartiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">905,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754400" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="INF">24,969,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="c81754401" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="INF">16,749,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754402" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:PrepaidExpenseCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">6,943,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="c81754403" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:PrepaidExpenseCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">6,087,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754404" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:AssetsCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">52,999,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="c81754405" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:AssetsCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">55,165,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-top: 0pt; margin-bottom: 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="c81754406" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" format="ixt:numdotdecimal" decimals="INF">6,064,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="c81754407" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" format="ixt:numdotdecimal" decimals="INF">4,353,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-top: 0pt; margin-bottom: 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="c81754408" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:Goodwill" scale="0" format="ixt:numdotdecimal" decimals="INF">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="c81754409" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:Goodwill" scale="0" format="ixt:numdotdecimal" decimals="INF">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-top: 0pt; margin-bottom: 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="c81754410" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="0" format="ixt:numdotdecimal" decimals="INF">3,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="c81754411" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="0" format="ixt:numdotdecimal" decimals="INF">7,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-top: 0pt; margin-bottom: 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="c81754412" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" format="ixt:numdotdecimal" decimals="INF">2,648,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="c81754413" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" format="ixt:numdotdecimal" decimals="INF">3,535,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-top: 0pt; margin-bottom: 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="c81754414" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" scale="0" format="ixt:numdotdecimal" decimals="INF">6,120,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="c81754415" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" scale="0" format="ixt:numdotdecimal" decimals="INF">5,549,000</ix:nonFraction></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td></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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754416" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:Assets" scale="0" format="ixt:numdotdecimal" decimals="INF">67,889,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="c81754417" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:Assets" scale="0" format="ixt:numdotdecimal" decimals="INF">68,664,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-top: 0pt; margin-bottom: 0pt;"><b>Liabilities and Shareholders' Equity</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;"><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-top: 0pt; margin-bottom: 0pt;">Current liabilities:</p> </td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: Times New Roman; font-size: 10pt;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754420" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:AccountsPayableCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">528,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="c81754421" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:AccountsPayableCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">1,983,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754422" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:AccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">1,250,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="c81754423" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:AccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">2,793,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Customer advance payments of orders</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="c81754424" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:ContractWithCustomerLiabilityCurrent" 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: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754425" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">209,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754426" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">883,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="c81754427" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">867,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754428" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:LiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">2,661,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="c81754429" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:LiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">5,852,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-top: 0pt; margin-bottom: 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="c81754430" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">1,817,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="c81754431" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">2,719,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-top: 0pt; margin-bottom: 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="c81754432" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" scale="0" format="ixt:numdotdecimal" decimals="INF">791,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="c81754433" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" scale="0" format="ixt:numdotdecimal" decimals="INF">563,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754434" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:Liabilities" scale="0" format="ixt:numdotdecimal" decimals="INF">5,269,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="c81754435" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:Liabilities" scale="0" format="ixt:numdotdecimal" decimals="INF">9,134,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);" class="GFJY4-DFU-com-rdg-thunderdome-client-resources-CssResource-html-lineItem-v2v-addition"><td style="font-family: Times New Roman; font-size: 10pt;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Commitments and contingincies</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;<span style="-sec-ix-hidden:c81754437">&#xa0;</span></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;<span style="-sec-ix-hidden:c81754438">&#xa0;</span></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-top: 0pt; margin-bottom: 0pt;">Shareholders' equity:</p> </td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(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-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Common stock, $<span style="-sec-ix-hidden:c81754442"><span style="-sec-ix-hidden:c81754443">.01</span></span> par value: <span style="-sec-ix-hidden:c81754444"><span style="-sec-ix-hidden:c81754445">50,000,000</span></span> shares authorized; <span style="-sec-ix-hidden:c81754446">13,115,341</span> and <span style="-sec-ix-hidden:c81754447">13,419,847</span> shares outstanding as of December 31, 2021 and December 31, 2020, 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="c81754440" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:CommonStockValue" scale="0" format="ixt:numdotdecimal" decimals="INF">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;">&#xa0;</td><td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754441" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:CommonStockValue" scale="0" format="ixt:numdotdecimal" decimals="INF">135,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Additional paid-in capital</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="c81754448" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:AdditionalPaidInCapitalCommonStock" 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: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754449" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:AdditionalPaidInCapitalCommonStock" scale="0" format="ixt:numdotdecimal" decimals="INF">409,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Retained earnings</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="c81754450" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" format="ixt:numdotdecimal" decimals="INF">62,488,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="c81754451" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" format="ixt:numdotdecimal" decimals="INF">58,986,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754452" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">62,620,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="c81754453" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">59,530,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754454" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">67,889,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="c81754455" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">68,664,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:center;margin:0pt 0pt 0pt 8pt;">The accompanying notes are an integral part of these consolidated financial statements.</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;">
       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="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>
    &#xa0;
  </div>
  <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
  <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
  <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Consolidated Statements of Comprehensive Income</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; padding-bottom: 1px;">&#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>Years Ended December 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>2021</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>2020</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-top: 0pt; margin-bottom: 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="c81754456" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="INF">68,637,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="c81754457" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="INF">102,700,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-top: 0pt; margin-bottom: 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="c81754458" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:CostOfGoodsAndServicesSold" scale="0" format="ixt:numdotdecimal" decimals="INF">43,339,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="c81754459" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:CostOfGoodsAndServicesSold" scale="0" format="ixt:numdotdecimal" decimals="INF">52,218,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="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;">&#xa0;</td><td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#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;">&#xa0;</td><td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#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(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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754460" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:GrossProfit" scale="0" format="ixt:numdotdecimal" decimals="INF">25,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: 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="c81754461" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:GrossProfit" scale="0" format="ixt:numdotdecimal" decimals="INF">50,482,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-top: 0pt; margin-bottom: 0pt;">Operating expenses:</p> </td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td></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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754463" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">16,554,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="c81754464" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">18,171,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Depreciation and amortization</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="c81754465" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="INF">817,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="c81754466" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="INF">729,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="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;">&#xa0;</td><td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#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;">&#xa0;</td><td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#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(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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754467" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:OperatingExpenses" scale="0" format="ixt:numdotdecimal" decimals="INF">17,371,000</ix:nonFraction></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="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="c81754468" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:OperatingExpenses" scale="0" format="ixt:numdotdecimal" decimals="INF">18,900,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754469" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:OperatingIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">7,927,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="c81754470" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:OperatingIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">31,582,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-top: 0pt; margin-bottom: 0pt;">Other income (expense):</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;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754472" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="INF">571,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="c81754473" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="INF">710,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Loss on marketable securities</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="c81754474" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:DebtSecuritiesAvailableForSaleGainLoss" 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: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754475" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:DebtSecuritiesAvailableForSaleGainLoss" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">62,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754476" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="0" format="ixt:numdotdecimal" decimals="INF">2,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="c81754477" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="0" format="ixt:numdotdecimal" decimals="INF">18,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="background-color: rgb(204, 238, 255);"><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#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;">&#xa0;</td><td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754478" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:NonoperatingIncomeExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">573,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="c81754479" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:NonoperatingIncomeExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">666,000</ix:nonFraction></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td>&#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-top: 0pt; margin-bottom: 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: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754480" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeLossAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="INF">8,500,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="c81754481" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeLossAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="INF">32,248,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-top: 0pt; margin-bottom: 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="c81754482" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">1,744,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="c81754483" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">5,360,000</ix:nonFraction></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: Times New Roman; font-size: 10pt;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 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="c81754484" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">6,756,000</ix:nonFraction></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="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="c81754485" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">26,888,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(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>&#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-top: 0pt; margin-bottom: 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="c81754486" contextRef="d_2021-01-01_2021-12-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.51</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="c81754487" contextRef="d_2020-01-01_2020-12-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">2.00</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-top: 0pt; margin-bottom: 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="c81754488" contextRef="d_2021-01-01_2021-12-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">0.50</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="c81754489" contextRef="d_2020-01-01_2020-12-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">1.92</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-top: 0pt; margin-bottom: 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="c81754490" contextRef="d_2021-01-01_2021-12-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">13,225,628</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="c81754491" contextRef="d_2020-01-01_2020-12-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">13,449,987</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-top: 0pt; margin-bottom: 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="c81754492" contextRef="d_2021-01-01_2021-12-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">13,499,442</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="c81754493" contextRef="d_2020-01-01_2020-12-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">13,972,145</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: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin: 0pt; text-align: center;">The accompanying notes are an integral part of these consolidated financial statements.</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;">
       25
     </div>
    </div>
   </div>
   <hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
   <div class="PGHDR" style="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>
    &#xa0;
  </div>
  <p style="font-family: Times New Roman; font-size: 12pt; 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;">&#xa0;</p>
  <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><b>Consolidated Statements of Shareholders</b>&#x2019;<b> Equity</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 style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td><td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td><td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Additional</b></b></p> </td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td><td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td><td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td></tr>
<tr 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><em style="font: inherit;"><em style="font: inherit;">Common Stock</em></em></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><em style="font: inherit;">Paid-in</em></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><em style="font: inherit;">Retained</em></b></b></p> </td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td><td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">&#xa0;</em></b></td><td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></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><em style="font: inherit;">Shares</em></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><em style="font: inherit;">Amount</em></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><em style="font: inherit;">Capital</em></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><em style="font: inherit;">Earnings</em></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><em style="font: inherit;">Total</em></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: 40%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Balance as of December 31, 2019</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754504" contextRef="i_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,885,273</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;">$</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754505" contextRef="i_2019-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">129,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;">$</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754506" contextRef="i_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">708,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;">$</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754507" contextRef="i_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">32,098,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;">$</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754508" contextRef="i_2019-12-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">32,935,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Common stock repurchased and retired</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754509" contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodShares" scale="0" format="ixt:numdotdecimal" decimals="INF">223,100</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="c81754510" contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="INF">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="c81754511" contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="INF">2,664,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="c81754512" contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:zerodash" decimals="INF" 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="c81754513" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="INF">2,666,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Options exercised</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754514" contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">757,674</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="c81754515" contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">8,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="c81754516" contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">1,990,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;"><em style="font: inherit;">-</em></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: Times 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="c81754518" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">1,998,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Share-based compensation expense</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">-</em></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: Times 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="c81754520" contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" 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: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754521" contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="INF">375,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="c81754522" contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" 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: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754523" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="INF">375,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net income</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754527" contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">26,888,000</ix:nonFraction></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754528" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">26,888,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-top: 0pt; margin-bottom: 0pt;">Balance as of December 31, 2020</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754529" contextRef="i_2020-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">13,419,847</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="c81754530" contextRef="i_2020-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">135,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;"><em style="font: inherit;">409,000</em></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: Times 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="c81754532" contextRef="i_2020-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">58,986,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="c81754533" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">59,530,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Common stock repurchased and retired</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754534" contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodShares" scale="0" format="ixt:numdotdecimal" decimals="INF">439,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="c81754535" contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="INF">4,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="c81754536" contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="INF">1,150,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="c81754537" contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="INF">3,254,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="c81754538" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="INF">4,408,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Options exercised</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754539" contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">134,494</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;"><em style="font: inherit;">1,000</em></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: Times 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="c81754541" contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">426,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;"><em style="font: inherit;">-</em></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: Times 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="c81754543" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">427,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Share-based compensation expense</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">-</em></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: Times 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="c81754545" contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" 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: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754546" contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="INF">315,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="c81754547" contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" 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: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754548" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="INF">315,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net income</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754552" contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">6,756,000</ix:nonFraction></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754553" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">6,756,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-top: 0pt; margin-bottom: 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; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td><td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81754554" 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; 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="c81754555" contextRef="i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">132,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);"><em style="font: inherit;">-</em></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="c81754557" contextRef="i_2021-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">62,488,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="c81754558" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="INF">62,620,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:center;margin:0pt 0pt 0pt 8pt;">The accompanying notes are an integral part of these consolidated financial statements.</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;">
       26
     </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>
    &#xa0;
  </div>
  <p style="font-family: Times New Roman; font-size: 12pt; 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;">&#xa0;</p>
  <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><b>Consolidated Statements of Cash Flows</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="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Years Ended December 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>2021</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>2020</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%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Cash Flows From Operating Activities:</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;"><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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754560" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">6,756,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="c81754561" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">26,888,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Adjustments to reconcile net income to net cash provided by (used in) operating activities:</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;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Share-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="c81754563" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:ShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="INF">315,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="c81754564" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:ShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="INF">375,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-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">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="c81754565" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="INF">817,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="c81754566" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="INF">729,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-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Loss on marketable securities</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="c81754567" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:DebtSecuritiesAvailableForSaleGainLoss" scale="0" format="ixt:zerodash" decimals="INF" 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: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754568" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:DebtSecuritiesAvailableForSaleGainLoss" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">62,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-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">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="c81754569" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="INF">571,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="c81754570" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="INF">710,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-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">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="c81754571" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="apt:OperatingLeaseExpenseNetOfAccretion" scale="0" format="ixt:numdotdecimal" decimals="INF">887,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="c81754572" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="apt:OperatingLeaseExpenseNetOfAccretion" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">357,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-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Deferred 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="c81754573" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">228,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="c81754574" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">47,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-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Changes in assets and liabilities:</p> </td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: Times New Roman; font-size: 10pt;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">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="c81754576" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">4,735,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="c81754577" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="0" format="ixt:numdotdecimal" decimals="INF">4,564,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-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">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="c81754578" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInDueFromRelatedParties" scale="0" format="ixt:numdotdecimal" decimals="INF">478,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="c81754579" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInDueFromRelatedParties" scale="0" format="ixt:numdotdecimal" decimals="INF">181,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-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">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="c81754580" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInInventories" scale="0" format="ixt:numdotdecimal" decimals="INF">8,220,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="c81754581" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInInventories" scale="0" format="ixt:numdotdecimal" decimals="INF">5,446,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-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">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="c81754582" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInPrepaidExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">856,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="c81754583" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInPrepaidExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">2,500,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-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">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="c81754584" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">2,998,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="c81754585" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" scale="0" format="ixt:numdotdecimal" decimals="INF">3,355,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-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Customer advance payments of orders</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="c81754586" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">209,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="c81754587" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" scale="0" format="ixt:numdotdecimal" decimals="INF">209,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-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">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="c81754588" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInOperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">886,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="c81754589" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInOperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="INF">367,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net cash provided by (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="c81754590" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">480,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="c81754591" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" format="ixt:numdotdecimal" decimals="INF">18,274,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-top: 0pt; margin-bottom: 0pt;"><b>Cash Flows From Investing Activities:</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;"><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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Purchase 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;">&#xa0;</td><td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754593" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="0" format="ixt:numdotdecimal" decimals="INF">2,524,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="c81754594" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="0" format="ixt:numdotdecimal" decimals="INF">1,135,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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Proceeds from sales of marketable securities</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="c81754595" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" scale="0" format="ixt:zerodash" decimals="INF">-</ix:nonFraction></td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 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="c81754596" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" scale="0" format="ixt:numdotdecimal" decimals="INF">273,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754597" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">2,524,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="c81754598" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">862,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-top: 0pt; margin-bottom: 0pt;"><b>Cash Flows From Financing Activities:</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;"><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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754600" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="apt:ProceedsFromPaymentsForStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">427,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="c81754601" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="apt:ProceedsFromPaymentsForStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">1,998,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754602" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="0" format="ixt:numdotdecimal" decimals="INF">4,408,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="c81754603" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="0" format="ixt:numdotdecimal" decimals="INF">2,666,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-top: 0pt; margin-bottom: 0pt; margin-left: 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="c81754604" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">3,981,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="c81754605" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">668,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-top: 0pt; margin-bottom: 0pt;">Increase (decrease) in cash and cash equivalents</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td><td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754606" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">6,985,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="c81754607" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="0" format="ixt:numdotdecimal" decimals="INF">16,744,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-top: 0pt; margin-bottom: 0pt;">Cash and cash equivalents, beginning of the year</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="c81754608" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="INF">23,292,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="c81754609" contextRef="i_2019-12-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="INF">6,548,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-top: 0pt; margin-bottom: 0pt;">Cash and cash equivalents, end of the year</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="c81754610" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="INF">16,307,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="c81754611" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="INF">23,292,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-top: 0pt; margin-bottom: 0pt;">Supplemental disclosure of cash flow information:</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>&#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-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Cash paid 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; 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="c81754613" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeTaxesPaid" scale="0" format="ixt:numdotdecimal" decimals="INF">1,824,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="c81754614" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeTaxesPaid" scale="0" format="ixt:numdotdecimal" decimals="INF">4,136,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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">The accompanying notes are an integral part of these consolidated financial statements.</p>
  <p style="text-align:justify;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;">
     27
   </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%">
     &#xa0;
   </div>
  </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: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
  <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
  <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:NatureOfOperations" id="c2054714" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">1.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><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: &quot;Times New Roman&quot;; 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;US&#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;">The ongoing&#xa0;novel coronavirus (COVID-<em style="font: inherit;">19</em>) pandemic has adversely affected global economies, financial markets and the overall environment in which we do business. Overall, the increase in sales of our Disposable Protective Apparel segment products resulting from the pandemic has had a positive impact on our year-to-date results, but the positive impact in <em style="font: inherit;">2021</em> is less than in <em style="font: inherit;">2020,</em> as the effects of COVID-<em style="font: inherit;">19</em> are normalizing. The extent of the pandemic&#x2019;s effect on our future operational and financial performance will depend in large part on future developments, which cannot be predicted with confidence at this time. Future developments include the duration, scope and severity of the pandemic and new variants, including the Omicron variant, 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 and rapidly evolving situation, we are unable to predict with any certainty the likely impact of the&#xa0;COVID-<em style="font: inherit;">19</em> pandemic on our future operations.</p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="c2054715" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">2.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Summary of Significant Accounting Policies</b></p> </td></tr>
</tbody></table>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ConsolidationPolicyTextBlock" id="c81757161" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Principles of Consolidation</b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">The consolidated financial statements of the Company include the accounts of the Company and its wholly-owned subsidiaries, Alpha Pro Tech, Inc. and Alpha ProTech Engineered Products, Inc. All significant intercompany accounts and transactions have been eliminated in consolidation.</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;">Events that occurred after <em style="font: inherit;"> December 31, 2021 </em>through the date on which these financial statements were filed with the Securities and Exchange Commission (&#x201c;SEC&#x201d;) were considered in the preparation of these financial statements.</p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:UseOfEstimates" id="c81757162" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Use of 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 0pt 0pt 21pt;">The preparation of financial statements in conformity with U.S. generally accepted accounting principles (&#x201c;U.S. GAAP&#x201d;) requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and the disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses for the reporting period. Actual results could differ from these estimates.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p></ix:nonNumeric>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" id="c81757163" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Periods Presented</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 21pt;">All amounts have been rounded to the nearest thousand with the exception of the per share data. The Company qualified as a smaller reporting company at the measurement date for determining such qualification during <em style="font: inherit;">2021.</em> According to the disclosure requirements for smaller reporting companies, the Company has included balance sheets as of the end of the <em style="font: inherit;">two</em> most recent years and statements of income, comprehensive income, shareholders&#x2019; equity and cash flows for each of the <em style="font: inherit;">two</em> most recent years.</p> <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;"></p>
   <ix:exclude>
    <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;">
       <em style="font: inherit;"></em>
      </div>
     </div>
    </div>
   </ix:exclude>
   <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;">
        <em style="font: inherit;">28</em>
       </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> <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p> <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</b></p> </ix:exclude>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock" id="c81757164" escape="true"><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:exclude><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Cash and Cash Equivalents</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 21pt;">The Company considers all highly liquid investments purchased with an original maturity of <em style="font: inherit;">three</em> months or less to be cash equivalents.</p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:MarketableSecuritiesPolicy" id="c81757165" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Investments</b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#xa0;</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">Investments are classified as available-for-sale in accordance with U.S. GAAP. The Company does <em style="font: inherit;">not</em> have any investments in securities that are classified as held-to-maturity or trading. Available-for-sale investments are carried at their fair values using quoted prices in active markets for identical securities, with realized and unrealized gains and losses reported in net income. The cost of securities sold is based on the specific identification method. Investments that the Company intends to hold for more than <em style="font: inherit;">one</em> year are classified as long-term investments in the accompanying consolidated balance sheets.&#xa0;&#xa0;&#xa0;&#xa0;</p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ReceivablesPolicyTextBlock" id="c81757185" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Accounts Receivable</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 21pt;">Accounts receivable are recorded at the invoice amount and do <em style="font: inherit;">not</em> bear interest.&#xa0; The allowance for doubtful accounts is the Company&#x2019;s best estimate of the amount of probable credit losses in the Company&#x2019;s existing accounts receivable; however, changes in circumstances relating to accounts receivable <em style="font: inherit;"> may </em>result in a requirement for additional allowances in the future.&#xa0; The Company determines the allowance based upon historical write-off experience and known conditions about its customers&#x2019; current ability to pay.&#xa0; Account balances are charged against the allowance when management determines that the probability for collection is remote.</p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:InventoryPolicyTextBlock" id="c81757186" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Inventories</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 21pt;">Inventories include freight-in, materials, labor and overhead costs and are stated at the lower of cost or net realizable value. Allowances are recorded for slow-moving, obsolete or unusable inventories. The Company assesses inventories for estimated obsolescence or unmarketable products and writes down the difference between the cost of the inventories and the estimated net realizable values based upon assumptions about future sales and supplies on-hand.</p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock" id="c81757166" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Property and Equipment</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 21pt;">Property and equipment are stated at cost less accumulated depreciation and amortization. Costs to develop internal use software are charged to expense as incurred until the preliminary project stage has been completed and application development begins. The Company discontinues capitalization upon entering the post-implementation stage and expenses ongoing maintenance and support costs. Property and equipment are depreciated or amortized using the straight-line method over the shorter of the respective useful lives of the assets or the related lease terms as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
    <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="apt:PropertyPlantAndEquipmentUsefulLivesTableTextBlock" id="c2054716" escape="true">
     <table cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 80%; margin-left: 22pt; margin-right: auto;"><tbody><tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="width: 85%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Buildings (in years)</td><td style="width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font: inherit;">&#xa0;</em></td><td style="width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;"><ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c81754728" format="ixt-sec:duryear">25</ix:nonNumeric></td><td style="width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font: inherit;">&#xa0;</em></td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Machinery and equipment (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;"><ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MinimumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c81754730" format="ixt-sec:duryear">5</ix:nonNumeric></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;"><ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MaximumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c81754732" format="ixt-sec:duryear">15</ix:nonNumeric></td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Office furniture and equipment (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;"><ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-FurnitureAndFixturesMember_RangeAxis-MinimumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c81754733" format="ixt-sec:duryear">2</ix:nonNumeric></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;"><ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-FurnitureAndFixturesMember_RangeAxis-MaximumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c81754735" format="ixt-sec:duryear">7</ix:nonNumeric></td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Leasehold improvements (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;"><ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MinimumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c81754736" format="ixt-sec:duryear">4</ix:nonNumeric></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;"><ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MaximumMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c81754738" format="ixt-sec:duryear">5</ix:nonNumeric></td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Software (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;"><em style="font: inherit;">&#xa0;</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"><ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-SoftwareDevelopmentMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="c81754740" format="ixt-sec:duryear">5</ix:nonNumeric></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;"><em style="font: inherit;">&#xa0;</em></td></tr>
</tbody></table>
    </ix:nonNumeric> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 21pt;">&#xa0;</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">Expenditures for renewals and betterments are capitalized, whereas costs of maintenance and repairs are charged to operations in the period incurred.</p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy" id="c81757167" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Goodwill and Intangible Assets</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 21pt;">The Company accounts for goodwill and definite-lived intangible assets in accordance with Financial Accounting Standards Board (&#x201c;FASB&#x201d;) Accounting Standards Codification (&#x201c;ASC&#x201d;) <em style="font: inherit;">350,</em> Intangibles &#x2013; Goodwill and Other. Goodwill is <em style="font: inherit;">not</em> amortized, but rather is tested annually for impairment. Intangible assets with finite lives are amortized over their useful lives (see Note <em style="font: inherit;">6</em>). The Company&#x2019;s patents and trademarks are recorded at cost and are amortized using the straight-line method over their estimated useful lives of <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_RangeAxis-MinimumMember" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" id="c81754645" format="ixt-sec:duryear">5</ix:nonNumeric>-<ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_RangeAxis-MaximumMember" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" id="c81754647" format="ixt-sec:duryear">17</ix:nonNumeric> years.</p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:FairValueOfFinancialInstrumentsPolicy" id="c81757168" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Fair Value of Financial Instruments</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 21pt;">The estimated fair values of financial instruments are determined based on relevant market information and cannot be determined with precision. The Company&#x2019;s financial instruments consist primarily of cash, cash equivalents and marketable securities.</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#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 marketable securities are classified as available-for-sale and are carried at fair market value based on quoted market prices.</p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:exclude>
    <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;">
       <em style="font: inherit;"></em>
      </div>
     </div>
    </div>
   </ix:exclude>
   <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;">
        <em style="font: inherit;">29</em>
       </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> <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p> <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" id="c81757169" escape="true"><ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Impairment of Long-Lived Assets</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 21pt;">The Company reviews long-lived assets for impairment whenever events or changes in its business circumstances indicate that the carrying amounts of the assets <em style="font: inherit;"> may </em><em style="font: inherit;">not</em> be fully recoverable. If it is determined that the undiscounted future net cash flows are <em style="font: inherit;">not</em> sufficient to recover the carrying values of the assets, an impairment loss is recognized for the excess of the carrying values over the fair values of the assets. The Company believes that the future undiscounted net cash flows to be received from its long-lived assets exceed the assets&#x2019; carrying values and, accordingly, the Company has <span style="-sec-ix-hidden:c81754655"><span style="-sec-ix-hidden:c81754657">not</span></span> recognized any impairment losses for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><em style="font: inherit;"></em></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:RevenueRecognitionPolicyTextBlock" id="c81757170" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Revenue Recognition</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 21pt;">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 <em style="font: inherit;">third</em> 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 <em style="font: inherit;">not</em> 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 <em style="font: inherit;">third</em> 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 <em style="font: inherit;">not</em> pass to the customer at the time of manufacture, based upon the nature of the private labelling. The Company has determined as of <em style="font: inherit;"> December 31, 2021 </em>that it had <em style="font: inherit;">no</em> material contract assets, and concluded that its contract liabilities (primarily rebates) had the right of offset against customer receivables. As of <em style="font: inherit;"> December 31, 2021, </em>we had <em style="font: inherit;"><span style="-sec-ix-hidden:c81754670">no</span></em> contract liabilities as compared to $<ix:nonFraction id="c81754671" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">209,000</ix:nonFraction> as of <em style="font: inherit;"> December 31, 2020, </em>as a result of customer advance payments of orders in connection with the COVID-<em style="font: inherit;">19</em> pandemic. See Note <em style="font: inherit;">15</em> and Note <em style="font: inherit;">16</em> of these Notes to Consolidated Financial Statements for information on revenue disaggregated by type and by geographic region.</p></ix:nonNumeric>
   <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="apt:RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock" id="c81757171" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Shipping and Handling Costs</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 21pt;">The costs of shipping products to distributors are recorded in cost of goods sold.</p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" id="c81757175" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Stock-Based Compensation</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 21pt;">The Company maintains a stock option plan under which the Company <em style="font: inherit;"> may </em>grant incentive stock options and non-qualified stock options to employees and non-employee directors. 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.</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 accounts for share-based awards in accordance with ASC <em style="font: inherit;">718,</em> Stock Compensation. ASC <em style="font: inherit;">718</em> requires companies to record compensation expense for the value of all outstanding and unvested share-based awards, including employee stock options.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">For the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020</em> there were <em style="font: inherit;">no</em> stock options granted under the Company&#x2019;s stock option plan. The Company recognized $<ix:nonFraction id="c81754679" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">185,000</ix:nonFraction> and $<ix:nonFraction id="c81754680" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">375,000</ix:nonFraction> in share-based compensation expense for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively, related to outstanding options.&#xa0; For the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> <ix:nonFraction id="c81754683" contextRef="d_2021-01-01_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" format="ixt:numdotdecimal" decimals="INF">15,140</ix:nonFraction> and <ix:nonFraction id="c81754684" contextRef="d_2020-01-01_2020-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" format="ixt:numdotdecimal" decimals="INF">8,912</ix:nonFraction> restricted stock equity awards were granted under the <em style="font: inherit;">2020</em> Incentive Plan respectively and the compensation expense associated with these awards was $<ix:nonFraction id="c81754686" contextRef="d_2021-01-01_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">131,000</ix:nonFraction> and $<ix:nonFraction id="c81754687" contextRef="d_2020-01-01_2020-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">6,000</ix:nonFraction> in <em style="font: inherit;">2021</em> and <em style="font: inherit;">2020</em> respectively.</p> <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;"></p>
   <ix:exclude>
    <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;">
       <em style="font: inherit;"></em>
      </div>
     </div>
    </div>
   </ix:exclude>
   <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;">
        <em style="font: inherit;">30</em>
       </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> <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p> <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:IncomeTaxPolicyTextBlock" id="c81757176" escape="true"><ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Income Taxes</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 21pt;">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 <em style="font: inherit;">not</em> 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 <em style="font: inherit;">not</em> that the position will <em style="font: inherit;">not</em> 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 21pt;">Alpha Pro Tech, Ltd. and its subsidiaries file income tax returns in the U.S. federal jurisdiction, and in various state and foreign jurisdictions. &#xa0;</p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:EarningsPerSharePolicyTextBlock" id="c81757179" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Earnings Per Common Share</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 21pt;">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 potential common shares, and &#x201c;diluted&#x201d; EPS, which includes all potential common shares which are dilutive for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
    <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="c2054717" escape="true">
     <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 22pt;"><tbody><tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 18%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Years Ended December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net income (numerator)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81754742" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">6,756,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81754743" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">26,888,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Shares (denominator):</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Basic weighted average common shares outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754745" contextRef="d_2021-01-01_2021-12-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">13,225,628</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754746" contextRef="d_2020-01-01_2020-12-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">13,449,987</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Add: Dilutive effect of common stock options</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754747" contextRef="d_2021-01-01_2021-12-31" unitRef="Share" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0" format="ixt:numdotdecimal" decimals="INF">273,814</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754748" contextRef="d_2020-01-01_2020-12-31" unitRef="Share" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0" format="ixt:numdotdecimal" decimals="INF">522,158</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Diluted weighted average common shares outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81754749" contextRef="d_2021-01-01_2021-12-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">13,499,442</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81754750" contextRef="d_2020-01-01_2020-12-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">13,972,145</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Earnings per common share:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Basic</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81754752" contextRef="d_2021-01-01_2021-12-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.51</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81754753" contextRef="d_2020-01-01_2020-12-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">2.00</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Diluted</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81754754" contextRef="d_2021-01-01_2021-12-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">0.50</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81754755" contextRef="d_2020-01-01_2020-12-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">1.92</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td></tr>
</tbody></table>
    </ix:nonNumeric> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p></ix:nonNumeric>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" id="c81757181" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Translation of Foreign Currencies</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 21pt;">Transactions in foreign currencies are translated into U.S. dollars at the exchange rate prevailing at the transaction date. Monetary assets and liabilities in foreign currencies at each period end are translated at the exchange rate in effect at that date. Transaction gains or losses on foreign currencies are reflected in selling, general and administrative expenses and were <em style="font: inherit;">not</em> material for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></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 does <em style="font: inherit;">not</em> have a material foreign currency exposure due to the fact that all purchase agreements with companies in Asia and Mexico are in U.S. dollars. In addition, all sales transactions are in U.S. dollars. The Company&#x2019;s only foreign currency exposure is with its Canadian branch office. The foreign currency exposure is <em style="font: inherit;">not</em> material due to the fact that the Company does <em style="font: inherit;">not</em> manufacture products in Canada. The exposure primarily relates to payroll expenses in the Company&#x2019;s administrative branch office in Canada.</p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ResearchAndDevelopmentExpensePolicy" id="c81757187" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Research and Development Costs</b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#xa0;</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">Research and development costs are expensed as incurred and are included in selling, general and administrative expenses. Such costs were <em style="font: inherit;">not</em> material for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><em style="font: inherit;"></em></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:AdvertisingCostsPolicyTextBlock" id="c81757188" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Advertising Costs</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 21pt;">The Company expenses advertising and promotional costs as incurred. These costs are included in selling, general and administrative expenses and were $<ix:nonFraction id="c81754702" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:AdvertisingExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">27,000</ix:nonFraction> and $<ix:nonFraction id="c81754703" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:AdvertisingExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">32,000</ix:nonFraction> for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively.</p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:exclude>
    <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;">
       <em style="font: inherit;"></em>
      </div>
     </div>
    </div>
   </ix:exclude>
   <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;">
        <em style="font: inherit;">31</em>
       </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> <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p> <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#xa0;</p></ix:exclude>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:CommitmentsAndContingenciesPolicyTextBlock" id="c81757189" escape="true"><ix:exclude><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p></ix:exclude><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Loss Contingencies</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 21pt;">The outcomes of legal proceedings and claims brought against the Company are subject to uncertainty. An estimated loss from a loss contingency such as a legal proceeding or claim is accrued if it is probable that an asset has been impaired or a liability has been incurred and the amount of the loss can be reasonably estimated. In determining whether a loss should be accrued, we evaluate, among other factors, the degree of probability of an unfavorable outcome and the ability to make a reasonable estimate of the amount of loss.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p></ix:nonNumeric>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:FairValueMeasurementPolicyPolicyTextBlock" id="c81757190" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p>attestation<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Fair Value Measurements</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 21pt;">ASC <em style="font: inherit;">820,</em> Fair Value Measurements and Disclosures, establishes a framework for measuring fair value in accordance with U.S. GAAP, clarifies the definition of fair value within that framework and expands disclosures about the use of fair value measurements. On a quarterly basis, the Company measures at fair value certain financial assets using a hierarchy of valuation techniques based on whether the inputs to those valuation techniques are observable or unobservable. Observable inputs reflect market data obtained from independent sources, while unobservable inputs reflect the Company&#x2019;s own assumptions. The following fair value hierarchy prioritizes the inputs into <em style="font: inherit;">three</em> broad levels.</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;">This hierarchy requires the Company to minimize the use of unobservable inputs and to use observable market data, if available, when determining fair value. There were <em style="font: inherit;">no</em> fair values of the Company&#x2019;s financial assets as of <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><em style="font: inherit;"></em></p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:PriorPeriodReclassificationAdjustmentDescription" id="c81757247" escape="true"><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Reclassifications</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 21pt;">Certain reclassifications have been made to the prior years&#x2019; consolidated financial statements to conform to current year presentation. Certain financial information is presented on a rounded basis, which <em style="font: inherit;"> may </em>cause minor differences.</p></ix:nonNumeric>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="c81757248" escape="true"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>New Accounting Standards</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 21pt;">In <em style="font: inherit;"> June 2016, </em>the Financial Accounting Standards Board (&#x201c;FASB&#x201d;) issued Accounting Standards Update (&#x201c;ASU&#x201d;) <em style="font: inherit;">2016</em>-<em style="font: inherit;">13</em> Financial Instruments - Credit Losses (Topic <em style="font: inherit;">326</em>): Measurement of Credit Losses on Financial Instruments. ASU <em style="font: inherit;">2016</em>-<em style="font: inherit;">13</em> requires an organization to measure all expected credit losses for financial assets held at the reporting date based on historical experience, current conditions and reasonable and supportable forecasts. ASU <em style="font: inherit;">2016</em>-<em style="font: inherit;">13</em> is effective for public companies for the annual periods, including interim periods within those annual periods, beginning after <em style="font: inherit;"> December 15, 2019. </em>This guidance was applicable to the Company&#x2019;s fiscal year beginning <em style="font: inherit;"> January 1, 2020. </em>Adoption of the new standard did <em style="font: inherit;">not</em> have a material impact on our 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 21pt;">In <em style="font: inherit;"> December 2019, </em>the FASB issued ASU <em style="font: inherit;">No.</em> <em style="font: inherit;">2019</em>-<em style="font: inherit;">12,</em> Income Taxes (Topic <em style="font: inherit;">740</em>): Simplifying the Accounting for Income Taxes, which is intended to simplify various aspects related to accounting for income taxes. ASU <em style="font: inherit;">2019</em>-<em style="font: inherit;">12</em> removes certain exceptions to the general principles in Topic <em style="font: inherit;">740</em> and also clarifies and amends existing guidance to improve consistent application. This guidance is effective for fiscal years, and interim periods within those fiscal years, beginning after <em style="font: inherit;"> December 15, 2020, </em>with early adoption permitted. Adoption of the new standard did <em style="font: inherit;">not</em> have a material impact on our 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 21pt;">Management periodically reviews new accounting standards that are issued. Management has <em style="font: inherit;">not</em> identified any other new standards that it believes merit further discussion at this time.</p></ix:nonNumeric>
   <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;"></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_2021-01-01_2021-12-31" name="us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" id="c2054718" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">3.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Investments</b></p> </td></tr>
</tbody></table>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">As of <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> <span style="-sec-ix-hidden:c81754758"><span style="-sec-ix-hidden:c81754759">no</span></span> marketable securities investments were owned.&#xa0; <ix:nonFraction id="c81754760" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities" scale="0" format="ixt-sec:numwordsen" decimals="-3">No</ix:nonFraction> marketable securities were sold during the year ended <em style="font: inherit;"> December 31, 2021. </em>Certain marketable securities were sold during the year ended <em style="font: inherit;"> December 31, 2020, </em>for a net realized &#xa0;loss of $<ix:nonFraction id="c81754761" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:MarketableSecuritiesGainLoss" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">62,000</ix:nonFraction>.&#xa0;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#xa0;</p>
   <ix:exclude>
    <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;">
       <em style="font: inherit;"></em>
      </div>
     </div>
    </div>
   </ix:exclude>
   <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;">
        <em style="font: inherit;">32</em>
       </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> <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p> <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
  </ix:nonNumeric>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:InventoryDisclosureTextBlock" id="c2054719" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">4.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><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 21pt;">Inventories 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_2021-01-01_2021-12-31" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="c2054720" 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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Raw materials</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754769" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:InventoryRawMaterialsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="INF">13,545,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754770" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:InventoryRawMaterialsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="INF">9,729,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Work in process</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754771" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:InventoryWorkInProcessNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="INF">3,890,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754772" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:InventoryWorkInProcessNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="INF">2,003,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Finished goods</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754773" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:InventoryFinishedGoodsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="INF">7,534,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754774" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:InventoryFinishedGoodsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="INF">5,017,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Total inventory</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81754775" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="INF">24,969,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81754776" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="INF">16,749,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td></tr>
</tbody></table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  </ix:nonNumeric>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" id="c2054721" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">5.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Property and Equipment</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;">Property and equipment 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_2021-01-01_2021-12-31" name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="c2054722" 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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b> </b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Buildings</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754781" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:BuildingsAndImprovementsGross" scale="0" format="ixt:numdotdecimal" decimals="INF">493,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754782" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:BuildingsAndImprovementsGross" scale="0" format="ixt:numdotdecimal" decimals="INF">493,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Machinery and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754783" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:MachineryAndEquipmentGross" scale="0" format="ixt:numdotdecimal" decimals="INF">15,273,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754784" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:MachineryAndEquipmentGross" scale="0" format="ixt:numdotdecimal" decimals="INF">13,039,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Office furniture and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754785" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:FurnitureAndFixturesGross" scale="0" format="ixt:numdotdecimal" decimals="INF">2,177,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754786" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:FurnitureAndFixturesGross" scale="0" format="ixt:numdotdecimal" decimals="INF">2,076,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Leasehold improvements</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754787" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:LeaseholdImprovementsGross" scale="0" format="ixt:numdotdecimal" decimals="INF">553,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754788" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:LeaseholdImprovementsGross" scale="0" format="ixt:numdotdecimal" decimals="INF">517,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Software</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754789" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:CapitalizedComputerSoftwareGross" scale="0" format="ixt:numdotdecimal" decimals="INF">3,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754790" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:CapitalizedComputerSoftwareGross" scale="0" format="ixt:numdotdecimal" decimals="INF">3,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754791" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" format="ixt:numdotdecimal" decimals="INF">18,499,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754792" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" format="ixt:numdotdecimal" decimals="INF">16,128,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Less accumulated depreciation and amortization</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c81754793" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="0" format="ixt:numdotdecimal" decimals="INF">12,435,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c81754794" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="0" format="ixt:numdotdecimal" decimals="INF">11,775,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total net property and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81754795" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" format="ixt:numdotdecimal" decimals="INF">6,064,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81754796" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" format="ixt:numdotdecimal" decimals="INF">4,353,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td></tr>
</tbody></table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">Depreciation and amortization expense for property and equipment was $<ix:nonFraction id="c81754778" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:DepreciationAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="INF">813,000</ix:nonFraction> and $<ix:nonFraction id="c81754779" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:DepreciationAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="INF">725,000</ix:nonFraction> for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively.</p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock" id="c2054723" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">6.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Goodwill and Intangible Assets</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;">Management evaluates goodwill for impairment on an annual basis (<em style="font: inherit;">fourth</em> quarter), and <span style="-sec-ix-hidden:c81754799"><span style="-sec-ix-hidden:c81754800">no</span></span> impairment charge was identified for the years presented.</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;">Definite-lived intangible assets, consisting of patents and trademarks, are amortized over their useful lives. Intangible assets 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_2021-01-01_2021-12-31" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" id="c2054724" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31, 2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31, 2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amortization </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Period (Years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Gross </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Carrying</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Accumulated Amortization</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Net </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Carrying</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amortization </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Period </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>(Years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Gross</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Carrying </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Accumulated Amortization</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Net </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Carrying </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Patents and Trademarks</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" id="c81754805" format="ixt-sec:duryear">2.0</ix:nonNumeric></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81754806" contextRef="i_2021-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember" unitRef="USD" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="0" format="ixt:numdotdecimal" decimals="INF">474,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c81754807" contextRef="i_2021-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember" unitRef="USD" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="0" format="ixt:numdotdecimal" decimals="INF">471,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81754808" contextRef="i_2021-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember" unitRef="USD" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="0" format="ixt:numdotdecimal" decimals="INF">3,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonNumeric contextRef="d_2020-01-01_2020-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" id="c81754809" format="ixt-sec:duryear">3.0</ix:nonNumeric></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81754810" contextRef="i_2020-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember" unitRef="USD" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="0" format="ixt:numdotdecimal" decimals="INF">474,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c81754811" contextRef="i_2020-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember" unitRef="USD" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="0" format="ixt:numdotdecimal" decimals="INF">467,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81754812" contextRef="i_2020-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember" unitRef="USD" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="0" format="ixt:numdotdecimal" decimals="INF">7,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 23pt;">Amortization expense for intangible assets was $<ix:nonFraction id="c81754801" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:AmortizationOfIntangibleAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">4,000</ix:nonFraction> and $<ix:nonFraction id="c81754802" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:AmortizationOfIntangibleAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">4,000</ix:nonFraction> for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively.<b> </b></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:exclude>
    <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;">
       <em style="font: inherit;"></em></div></div></div></ix:exclude><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;"><em style="font: inherit;">33</em>
      </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>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
   <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 23pt;">Estimated future amortization expense related to definite-lived intangible assets is as follows:</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 23pt;"><b><span style="text-decoration: underline; ">Years ending <em style="font: inherit;"> December 31,</em></span></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>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" id="c2054725" 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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td colspan="2" style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754813" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" scale="0" format="ixt:numdotdecimal" decimals="INF">2,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 17.4%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; width: 63.6%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">`</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754814" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" scale="0" format="ixt:numdotdecimal" decimals="INF">1,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td colspan="2" style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81754815" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="0" format="ixt:numdotdecimal" decimals="INF">3,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td></tr>
</tbody></table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  </ix:nonNumeric>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:EquityMethodInvestmentsDisclosureTextBlock" id="c2054726" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">7.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Equity Investments 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 <em style="font: inherit;">2005,</em> 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="c81754818" 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="c81754819" 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 loan 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:c81754820">four</span> facilities in India (<span style="-sec-ix-hidden:c81754821">three</span> owned and <span style="-sec-ix-hidden:c81754822">one</span> rented), consisting of: (<em style="font: inherit;">1</em>) a <ix:nonFraction id="c81754824" contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingBuildingProductsMember_StatementGeographicalAxis-IN" unitRef="SquareFoot" name="us-gaap:AreaOfRealEstateProperty" scale="0" format="ixt:numdotdecimal" decimals="INF">113,000</ix:nonFraction> square foot building for manufacturing building products; (<em style="font: inherit;">2</em>) a <ix:nonFraction id="c81754826" contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN" unitRef="SquareFoot" name="us-gaap:AreaOfRealEstateProperty" scale="0" format="ixt:numdotdecimal" decimals="INF">73,000</ix:nonFraction> square foot building for manufacturing coated material and sewing proprietary disposable protective apparel; (<em style="font: inherit;">3</em>) a <ix:nonFraction id="c81754828" contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-SewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN" unitRef="SquareFoot" name="us-gaap:AreaOfRealEstateProperty" scale="0" format="ixt:numdotdecimal" decimals="INF">16,000</ix:nonFraction> square foot facility for sewing proprietary disposable protective apparel; and (<em style="font: inherit;">4</em>) a <ix:nonFraction id="c81754830" contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingOfBuildingProductsMember_StatementGeographicalAxis-IN" unitRef="SquareFoot" name="us-gaap:AreaOfRealEstateProperty" scale="0" format="ixt:numdotdecimal" decimals="INF">93,000</ix:nonFraction> square foot facility (rented) for manufacturing Building Supply segment products. All additions have been financed by Harmony with <em style="font: inherit;">no</em> guarantees from the Company.</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;">In accordance with ASC <em style="font: inherit;">810,</em> Consolidation, the Company assesses whether or <em style="font: inherit;">not</em> related entities are variable interest entities (&#x201c;VIEs&#x201d;). For those related entities that qualify as VIEs, ASC <em style="font: inherit;">810</em> requires the Company to determine whether or <em style="font: inherit;">not</em> the Company is the primary beneficiary of the VIE, and, if so, to consolidate the VIE. The Company has determined that Harmony is <em style="font: inherit;">not</em> 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:c81754837"><span style="-sec-ix-hidden:c81754838">no</span></span> impairment was required as of <em style="font: inherit;"> December 31, 2021 </em>or <em style="font: inherit;"> December 31, 2020.</em></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 years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> the Company purchased $<ix:nonFraction id="c81754840" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="apt:ExpenseToAcquireInventory" scale="0" format="ixt:numdotdecimal" decimals="INF">26,252,000</ix:nonFraction> and $<ix:nonFraction id="c81754841" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="apt:ExpenseToAcquireInventory" scale="0" format="ixt:numdotdecimal" decimals="INF">18,623,000</ix:nonFraction> of inventories, respectively, from Harmony. For the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> the Company recorded equity in income of unconsolidated affiliate of $<ix:nonFraction id="c81754843" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="INF">571,000</ix:nonFraction> and $<ix:nonFraction id="c81754844" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="INF">710,000</ix:nonFraction>, respectively. For the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> the Company sold $<ix:nonFraction id="c81754846" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:ProceedsFromSaleOfProductiveAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">1,931,000</ix:nonFraction> and $<ix:nonFraction id="c81754847" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:ProceedsFromSaleOfProductiveAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">1,087,000</ix:nonFraction> of inventories, respectively, to Harmony.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">As of <em style="font: inherit;"> December 31, 2021, </em>the Company&#x2019;s investment in Harmony was $<ix:nonFraction id="c81754848" contextRef="i_2021-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="INF">6,120,000</ix:nonFraction>, which consisted of its original $<ix:nonFraction id="c81754849" contextRef="i_2021-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestmentAggregateCost" scale="0" format="ixt:numdotdecimal" decimals="INF">1,450,000</ix:nonFraction> investment and cumulative equity in income of unconsolidated affiliate of $<ix:nonFraction id="c81754850" contextRef="i_2021-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="apt:CumulativeEquityInIncomeOfUnconsolidatedAffiliate" scale="0" format="ixt:numdotdecimal" decimals="INF">5,689,000</ix:nonFraction>, less $<ix:nonFraction id="c81754851" contextRef="d_2021-01-01_2021-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" scale="0" format="ixt:numdotdecimal" decimals="INF">942,000</ix:nonFraction> in repayments of an advance and payments of $<ix:nonFraction id="c81754852" contextRef="d_2021-01-01_2021-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestmentDividendsOrDistributions" scale="0" format="ixt:numdotdecimal" decimals="INF">77,000</ix:nonFraction> in dividends.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:exclude>
    <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;">
       <em style="font: inherit;">34</em>
      </div>
     </div>
    </div>
    </ix:exclude><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><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>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
   <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
  </ix:nonNumeric>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" id="c2054727" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">8.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; 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 21pt;">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_2021-01-01_2021-12-31" name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock" id="c2054728" 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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Payroll expenses and tax payable</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c81754860" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:AccruedSalariesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">187,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c81754861" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:AccruedSalariesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">123,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Commission and bonuses payable and general accrued liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754862" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:AccruedBonusesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">1,063,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754863" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:AccruedBonusesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">2,670,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total accrued liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81754864" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:AccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">1,250,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81754865" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:AccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">2,793,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">Contract liabilities were $<ix:nonFraction id="c81754857" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:ContractWithCustomerLiability" scale="0" format="ixt:numdotdecimal" decimals="INF">2,238,000</ix:nonFraction> and $<ix:nonFraction id="c81754858" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:ContractWithCustomerLiability" scale="0" format="ixt:numdotdecimal" decimals="INF">2,263,000</ix:nonFraction> as of <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively, which are netted against the related accounts receivable due to the legal right of offset.</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_2021-01-01_2021-12-31" name="us-gaap:DebtDisclosureTextBlock" id="c2054729" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">9.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Notes Payable</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 maintained a $<ix:nonFraction id="c81754867" contextRef="i_2020-05-31" unitRef="USD" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="0" format="ixt:numdotdecimal" decimals="INF">3,500,000</ix:nonFraction> credit facility with Wells Fargo Bank, which expired in <em style="font: inherit;"> May 2020, </em>and which the Company decided <em style="font: inherit;">not</em> to renew. The Company has continued its relationship with Wells Fargo, with the exception of the credit facility. As of <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> the Company had <span style="-sec-ix-hidden:c81754870"><span style="-sec-ix-hidden:c81754871">no</span></span> outstanding borrowings and <span style="-sec-ix-hidden:c81754872"><span style="-sec-ix-hidden:c81754873">no</span></span> other debt.</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_2021-01-01_2021-12-31" name="us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock" id="c2054730" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">10.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Shareholders</b>&#x2019;<b> Equity</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;text-indent:21pt;"><b>Repurchase Program</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 20pt;text-indent:1pt;">During the year ended <em style="font: inherit;"> December 31, 2021, </em>the Company repurchased and retired <ix:nonFraction id="c81754875" contextRef="d_2021-01-01_2021-12-31" unitRef="Share" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodShares" scale="0" format="ixt:numdotdecimal" decimals="INF">439,000</ix:nonFraction> shares of its common stock for $<ix:nonFraction id="c81754876" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="0" format="ixt:numdotdecimal" decimals="INF">4,408,000</ix:nonFraction>. During the year ended <em style="font: inherit;"> December 31, 2020, </em>the Company repurchased and retired <ix:nonFraction id="c81754877" contextRef="d_2020-01-01_2020-12-31" unitRef="Share" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodShares" scale="0" format="ixt:numdotdecimal" decimals="INF">223,100</ix:nonFraction> shares of its common stock for $<ix:nonFraction id="c81754878" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="0" format="ixt:numdotdecimal" decimals="INF">2,666,000</ix:nonFraction>. As of <em style="font: inherit;"> December 31, 2021, </em>the Company had $<ix:nonFraction id="c81754879" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" scale="0" format="ixt:numdotdecimal" decimals="INF">2,078,000</ix:nonFraction> available to repurchase common shares under the repurchase program.</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;text-indent:21pt;"><b>Option Activity</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 21pt;">The <em style="font: inherit;">2004</em> Stock Option Plan (the <em style="font: inherit;">&#x201c;2004</em> Plan&#x201d;) is an equity compensation plan that provides for grants of stock options to eligible individuals.&#xa0; The <em style="font: inherit;">2004</em> Plan is intended to recognize the contributions made to the Company by key employees of the Company, provide key employees with additional incentive to devote themselves to the future success of the Company and improve the ability of the Company to attract, retain and motivate individuals.&#xa0; The <em style="font: inherit;">2004</em> Plan also is intended as an incentive to certain members of the Board of Directors of the Company to continue to serve on the Board of Directors and to devote themselves to the future success of the Company.</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 <em style="font: inherit;">2004</em> Plan provides for a total of <ix:nonFraction id="c81754885" contextRef="i_2021-12-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 <em style="font: inherit;">2004</em> Plan, approximately <ix:nonFraction id="c81754887" 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 had been granted as of <em style="font: inherit;"> December 31, 2020. </em>Under the <em style="font: inherit;">2004</em> Plan, option grants have a <span style="-sec-ix-hidden:c81754889">three</span>-year vesting period and, since <em style="font: inherit;">2005,</em> expire <em style="font: inherit;">no</em> later than the <span style="-sec-ix-hidden:c81754892">fifth</span> anniversary from the date of grant. The exercise price of the options is determined based on the fair market value of the stock on the date of grant.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">At the Company&#x2019;s <em style="font: inherit;">2020</em> Annual Meeting of Shareholders held on <em style="font: inherit;"> June 9, 2020, </em>the Company&#x2019;s shareholders approved the Alpha Pro Tech, Ltd. <em style="font: inherit;">2020</em> Omnibus Incentive Plan (the <em style="font: inherit;">&#x201c;2020</em> Incentive Plan&#x201d;).&#xa0; The <em style="font: inherit;">2020</em> 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.&#xa0; A total of <ix:nonFraction id="c81754897" contextRef="i_2021-12-31_PlanNameAxis-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 <em style="font: inherit;">2020</em> Incentive Plan, plus the number of shares underlying any award granted under the <em style="font: inherit;">2004</em> Option Plan that expires, terminates or is cancelled or forfeited under the terms of the <em style="font: inherit;">2004</em> Option Plan.&#xa0; As a result of the approval of the <em style="font: inherit;">2020</em> Incentive Plan, <em style="font: inherit;">no</em> future equity awards will be made pursuant to the <em style="font: inherit;">2004</em> Option Plan. Although <em style="font: inherit;">no</em> new awards <em style="font: inherit;"> may </em>be granted under the <em style="font: inherit;">2004</em> Option Plan, all previously granted awards under the <em style="font: inherit;">2004</em> Option Plan will continue to be governed by the terms of the <em style="font: inherit;">2004</em> Option Plan. As of <em style="font: inherit;"> December 31, 2021, </em><ix:nonFraction id="c81754908" contextRef="d_2020-06-10_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" format="ixt:numdotdecimal" decimals="INF">24,052</ix:nonFraction> restricted stock equity awards had been granted under the <em style="font: inherit;">2020</em> Incentive Plan, the total for <span style="-sec-ix-hidden:c81754910">2021</span> compensation expense of these awards is $<ix:nonFraction id="c81754911" contextRef="d_2021-01-01_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">131,000</ix:nonFraction>. As of <em style="font: inherit;"> December 31, 2021, </em>$<ix:nonFraction id="c81754912" contextRef="i_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member" unitRef="USD" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="0" format="ixt:numdotdecimal" decimals="INF">79,000</ix:nonFraction> of total unrecognized compensation cost related to the restricted stock grants was expected to be recognized over a weighted-average remainder period of <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="c81754913" format="ixt-sec:duryear">0.73</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="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;">
       <em style="font: inherit;"></em></div></div></div></ix:exclude><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;"><em style="font: inherit;">35</em>
      </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>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
   <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">The following table summarizes option activity for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020:</em></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="c2054731" 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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Average</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Exercise Price</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Shares</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Per Option</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Options outstanding, December 31, 2019</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754931" contextRef="i_2019-12-31" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" format="ixt:numdotdecimal" decimals="INF">1,326,414</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754932" contextRef="i_2019-12-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">2.86</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Granted to employees and directors</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754933" contextRef="d_2020-01-01_2020-12-31_TitleOfIndividualAxis-EmployeesAndDirectorsMember" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" format="ixt:zerodash" decimals="INF">-</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754934" contextRef="d_2020-01-01_2020-12-31_TitleOfIndividualAxis-EmployeesAndDirectorsMember" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" format="ixt:zerodash" decimals="INF">-</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Exercised</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754935" contextRef="d_2020-01-01_2020-12-31" unitRef="Share" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">757,674</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754936" contextRef="d_2020-01-01_2020-12-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">2.64</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Canceled/expired/forfeited</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754937" contextRef="d_2020-01-01_2020-12-31" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" scale="0" format="ixt:zerodash" decimals="INF" sign="-">-</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754938" contextRef="d_2020-01-01_2020-12-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" scale="0" format="ixt:zerodash" decimals="INF">-</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Options outstanding, December 31, 2020</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754939" contextRef="i_2020-12-31" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" format="ixt:numdotdecimal" decimals="INF">568,740</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754940" contextRef="i_2020-12-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">3.42</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Granted to employees and directors</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754941" contextRef="d_2021-01-01_2021-12-31_TitleOfIndividualAxis-EmployeesAndDirectorsMember" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" format="ixt:zerodash" decimals="INF">-</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754942" contextRef="d_2021-01-01_2021-12-31_TitleOfIndividualAxis-EmployeesAndDirectorsMember" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" format="ixt:zerodash" decimals="INF">-</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Exercised</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754943" contextRef="d_2021-01-01_2021-12-31" unitRef="Share" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">134,494</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754944" contextRef="d_2021-01-01_2021-12-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">3.17</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Canceled/expired/forfeited</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c81754945" contextRef="d_2021-01-01_2021-12-31" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" scale="0" format="ixt:numdotdecimal" decimals="INF">6,666</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754946" contextRef="d_2021-01-01_2021-12-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">3.62</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Options outstanding, December 31, 2021</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81754947" contextRef="i_2021-12-31" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" format="ixt:numdotdecimal" decimals="INF">427,580</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754948" contextRef="i_2021-12-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">3.50</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Options exercisable, December 31, 2021</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81754949" contextRef="i_2021-12-31" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" scale="0" format="ixt:numdotdecimal" decimals="INF">315,583</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754950" contextRef="i_2021-12-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">3.47</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">Stock options to purchase <ix:nonFraction id="c81754916" contextRef="i_2021-12-31" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" format="ixt:numdotdecimal" decimals="INF">427,580</ix:nonFraction> and <ix:nonFraction id="c81754917" contextRef="i_2020-12-31" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" format="ixt:numdotdecimal" decimals="INF">568,740</ix:nonFraction> shares of common stock were outstanding as of <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively.&#xa0;All of the stock options were included in the computation of the weighted-average number of dilutive common shares outstanding for the year ended <em style="font: inherit;"> December 31, 2021. </em>All of the stock options, were included in the computation of the weighted-average number of dilutive common shares outstanding for the year ended <em style="font: inherit;"> December 31, 2021.</em></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 20pt;">The Company used the Black-Scholes option-pricing model to value the options. The Company uses historical data to estimate the expected term of the options. The risk-free interest rate for periods consistent with the expected term of the award is based on the U.S. Treasury rates in effect at the time of grant. The expected volatility is based on historical volatility. The Company uses an estimated dividend payout ratio of zero, as the Company has <span style="-sec-ix-hidden:c81754919">not</span> paid dividends in the past and, at this time, does <em style="font: inherit;">not</em> expect to do so in the foreseeable future. The Company accounts for option forfeitures as they occur.</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 0pt 0pt 20pt;text-indent:20pt;">The following table summarizes information about stock options as of <em style="font: inherit;"> December 31, 2021:</em></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock" id="c2054732" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 5%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 2%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 5%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#xa0;</td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 34%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Options</b> <b>Outstanding</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#xa0;</td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 34%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Options</b> <b>Exercisable</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td colspan="3" rowspan="1" style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 7%; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Range</b> <b>of</b></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Exercise</b></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Prices</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Options</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b> <b>Exercise</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Price</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Remaining</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Contract Life</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>(in years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Aggregate</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Intrinsic </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Value</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Options</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b> <b>Exercise </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Price</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Remaining</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Contract Life </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>(in years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Aggregate</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Intrinsic</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Value</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 5%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: right;">$3.42</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 2%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 5%;">$<ix:nonFraction id="c81754953" contextRef="d_2021-01-01_2021-12-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" scale="0" format="ixt:numdotdecimal" decimals="INF">3.90</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754954" contextRef="i_2021-12-31" unitRef="Share" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" scale="0" format="ixt:numdotdecimal" decimals="INF">427,580</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754955" contextRef="i_2021-12-31" unitRef="USDPerShare" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" scale="0" format="ixt:numdotdecimal" decimals="INF">3.50</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" id="c81754956" format="ixt-sec:duryear">1.91</ix:nonNumeric></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754957" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" scale="0" format="ixt:numdotdecimal" decimals="INF">1,056,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754958" contextRef="i_2021-12-31" unitRef="Share" name="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" scale="0" format="ixt:numdotdecimal" decimals="INF">315,583</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754959" contextRef="i_2021-12-31" unitRef="USDPerShare" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" scale="0" format="ixt:numdotdecimal" decimals="INF">3.47</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" id="c81754960" format="ixt-sec:duryear">1.77</ix:nonNumeric></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754961" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" scale="0" format="ixt:numdotdecimal" decimals="INF">790,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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;">The intrinsic value is the amount by which the market value of the underlying common stock exceeds the exercise price of the respective stock options. The aggregate intrinsic value of stock options exercised during the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020</em> was $<ix:nonFraction id="c81754922" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="0" format="ixt:numdotdecimal" decimals="INF">806,000</ix:nonFraction> and $<ix:nonFraction id="c81754923" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="0" format="ixt:numdotdecimal" decimals="INF">10,772,000</ix:nonFraction>, respectively.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">As of <em style="font: inherit;"> December 31, 2021, </em>$<ix:nonFraction id="c81754924" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="0" format="ixt:numdotdecimal" decimals="INF">37,000</ix:nonFraction> of total unrecognized compensation cost related to stock options was expected to be recognized over a weighted-average remaining period of <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="c81754925" format="ixt-sec:duryear">0.42</ix:nonNumeric> years. Cash received from <ix:nonFraction id="c81754926" contextRef="d_2021-01-01_2021-12-31" unitRef="Share" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">134,494</ix:nonFraction> options exercised for the year ended <em style="font: inherit;"> December 31, 2021 </em>was $<ix:nonFraction id="c81754927" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:ProceedsFromStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">427,000</ix:nonFraction>.</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;text-indent:21pt;"><b>Dividends</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 18pt;">The holders of the Company&#x2019;s common stock are entitled to receive such dividends as <em style="font: inherit;"> may </em>be declared by the Board of Directors of the Company from time to time to the extent that funds are legally available for payment thereof. The Company has never declared or paid any dividends on any of its outstanding shares of common stock. The Board of Directors&#x2019; current policy is <em style="font: inherit;">not</em> to pay dividends but rather to use available funds to repurchase common shares in accordance with the Company&#x2019;s repurchase program and to fund the continued development and growth of the Company. Consequently, the Company currently has <em style="font: inherit;">no</em> plans to pay cash dividends in the foreseeable future.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p><ix:exclude><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></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;">
       <em style="font: inherit;">36</em>
      </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>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
   <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
  </ix:nonNumeric>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:IncomeTaxDisclosureTextBlock" id="c2054733" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">11.</em></b></p> </td><td style="width: auto;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><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;text-indent:23pt;">The provision (benefit) for income taxes 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_2021-01-01_2021-12-31" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" id="c2054734" 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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>For the Years Ended December 31,</b> </b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Current</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c81754964" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:CurrentIncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">1,516,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c81754965" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:CurrentIncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">5,313,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Deferred</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754966" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">228,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81754967" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">47,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Provision for income taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81754968" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">1,744,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81754969" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">5,360,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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;text-indent:23pt;">Deferred income tax assets (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_2021-01-01_2021-12-31" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" id="c2054735" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Temporary differences:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Property and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754971" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" scale="0" format="ixt:numdotdecimal" decimals="INF">993,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754972" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" scale="0" format="ixt:numdotdecimal" decimals="INF">706,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Intangible assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754973" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">10,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754974" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">9,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Inventory reserve</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754975" contextRef="i_2021-12-31" unitRef="USD" name="apt:DeferredTaxAssetsInventoryCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">79,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754976" contextRef="i_2020-12-31" unitRef="USD" name="apt:DeferredTaxAssetsInventoryCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">24,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Accrued expenses and inventory</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754977" contextRef="i_2021-12-31" unitRef="USD" name="apt:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">216,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754978" contextRef="i_2020-12-31" unitRef="USD" name="apt:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">250,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Basis difference in investments</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754979" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IssuanceOfStockAndWarrantsForServicesOrClaims" scale="0" format="ixt:numdotdecimal" decimals="INF">35,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754980" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IssuanceOfStockAndWarrantsForServicesOrClaims" scale="0" format="ixt:numdotdecimal" decimals="INF">35,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign exchange</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754981" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains" scale="0" format="ixt:numdotdecimal" decimals="INF">11,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754982" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains" scale="0" format="ixt:numdotdecimal" decimals="INF">40,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">AMT/Foreign tax credits</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754983" contextRef="i_2021-12-31" unitRef="USD" name="apt:DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits" scale="0" format="ixt:numdotdecimal" decimals="INF">42,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754984" contextRef="i_2020-12-31" unitRef="USD" name="apt:DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits" scale="0" format="ixt:zerodash" decimals="INF">-</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">State income taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c81754985" contextRef="i_2021-12-31" unitRef="USD" name="apt:DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">171,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c81754986" contextRef="i_2020-12-31" unitRef="USD" name="apt:DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">117,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net deferred income tax liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c81754987" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:DeferredTaxLiabilities" scale="0" format="ixt:numdotdecimal" decimals="INF">791,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c81754988" contextRef="i_2020-12-31" unitRef="USD" name="us-gaap:DeferredTaxLiabilities" scale="0" format="ixt:numdotdecimal" decimals="INF">563,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</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 21pt;">The provision for income taxes differs from the amount that would be obtained by applying the U.S. statutory rate to income before income taxes as a result 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_2021-01-01_2021-12-31" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" id="c2054736" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>For the Years Ended December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Income taxes based on U.S. statutory rate of 21% and 34%, respectively</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754989" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" scale="0" format="ixt:numdotdecimal" decimals="INF">1,785,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754990" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" scale="0" format="ixt:numdotdecimal" decimals="INF">6,772,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Non-deductible meals and entertainment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754991" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" scale="0" format="ixt:zerodash" decimals="INF">-</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754992" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" scale="0" format="ixt:numdotdecimal" decimals="INF">5,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">FDII deduction</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754993" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationTaxCreditsForeign" scale="0" format="ixt:numdotdecimal" decimals="INF">49,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754994" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationTaxCreditsForeign" scale="0" format="ixt:numdotdecimal" decimals="INF">348,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Foreign taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754995" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">120,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754996" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">38,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">State taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754997" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" scale="0" format="ixt:numdotdecimal" decimals="INF">219,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81754998" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" scale="0" format="ixt:numdotdecimal" decimals="INF">747,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Stock Compensation</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81754999" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">106,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c81755000" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">2,171,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755001" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationOtherReconcilingItems" scale="0" format="ixt:numdotdecimal" decimals="INF">15,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755002" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeTaxReconciliationOtherReconcilingItems" scale="0" format="ixt:numdotdecimal" decimals="INF">393,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Provision for income taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81755003" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">1,744,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81755004" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">5,360,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="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;">
       <em style="font: inherit;"></em></div></div></div></ix:exclude><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;"><em style="font: inherit;">37</em>
      </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>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
   <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
  </ix:nonNumeric>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:LesseeOperatingLeasesTextBlock" id="c2054737" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">12.</em></b></p> </td><td style="width: auto;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><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;"><b>Operating Lease Commitments:</b> The Company leases its facilities under non-cancelable operating leases expiring on various dates through <em style="font: inherit;"> January 1, 2024. </em>The Company has operating leases for the Company&#x2019;s corporate office and manufacturing facilities, which expire at various dates through&#xa0;<em style="font: inherit;">2024.</em> The Company&#x2019;s primary operating lease commitments at&#xa0;<em style="font: inherit;"> December 31, 2021 </em>related to the Company&#x2019;s manufacturing facilities in Valdosta, Georgia, Nogales, Arizona and Salt Lake City, Utah, as well as the Company&#x2019;s corporate headquarters in Markham, Ontario, Canada.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;">As of&#xa0;<em style="font: inherit;"> December 31, 2021, </em>the Company had operating lease right-of-use assets of&#xa0;$<ix:nonFraction id="c81755007" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" format="ixt:numdotdecimal" decimals="INF">2,648,000</ix:nonFraction>&#xa0;and operating lease liabilities of&#xa0;$<ix:nonFraction id="c81755008" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:OperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="INF">2,700,000</ix:nonFraction>. As of&#xa0;<em style="font: inherit;"> December 31, 2021, </em>we did <span style="-sec-ix-hidden:c81755009">not</span> have any finance leases recorded on the Company&#x2019;s consolidated balance sheet.&#xa0;Operating lease expense was approximately&#xa0;$<ix:nonFraction id="c81755010" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:OperatingLeaseExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">1,199,000</ix:nonFraction> and $<ix:nonFraction id="c81755011" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:OperatingLeaseExpense" scale="0" format="ixt:numdotdecimal" decimals="INF">1,154,000</ix:nonFraction> for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;">The aggregate future minimum lease payments and reconciliation to lease liabilities as of&#xa0;<em style="font: inherit;"> December 31, 2021 </em>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_2021-01-01_2021-12-31" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="c2054738" 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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c81755015" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" scale="0" format="ixt:numdotdecimal" decimals="INF">1,010,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755016" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" scale="0" format="ixt:numdotdecimal" decimals="INF">1,017,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2024</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755017" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" scale="0" format="ixt:numdotdecimal" decimals="INF">484,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2025</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755018" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" scale="0" format="ixt:numdotdecimal" decimals="INF">365,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total future minimum lease payments</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755019" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" scale="0" format="ixt:numdotdecimal" decimals="INF">2,876,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Less imputed interest</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c81755020" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="0" format="ixt:numdotdecimal" decimals="INF">176,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total lease liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81755021" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:OperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="INF">2,700,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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 <em style="font: inherit;"> December 31, 2021, </em>the weighted average remaining lease term of the Company&#x2019;s operating leases was&#xa0;<ix:nonNumeric contextRef="i_2021-12-31" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="c81755013" format="ixt-sec:duryear">3.08</ix:nonNumeric> years. During the year ended <em style="font: inherit;"> December 31, 2021, </em>the weighted average discount rate with respect to these leases was&#xa0;<ix:nonFraction id="c81755014" contextRef="i_2021-12-31" unitRef="Pure" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" format="ixt:numdotdecimal" decimals="4">4.17</ix:nonFraction>%.</p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="c2054739" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">13.</em></b></p> </td><td style="width: auto;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Legal </b>&#xa0;</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;"><b>Legal Proceedings:</b> The Company is subject to various pending and threatened litigation actions in the ordinary course of business. Although it is <em style="font: inherit;">not</em> 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 <em style="font: inherit;">not</em> anticipate that the ultimate liability, if any, resulting from such litigation will have a material effect on the Company&#x2019;s financial condition and results of operations.</p>
  </ix:nonNumeric>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock" id="c2054740" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">14.</em></b></p> </td><td style="width: auto;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Employee Benefit Plans</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 certain benefit plans. Under the plans, employees <em style="font: inherit;"> may </em>contribute up to <ix:nonFraction id="c81755026" contextRef="d_2021-01-01_2021-12-31" unitRef="Pure" name="us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" scale="-2" format="ixt:numdotdecimal" decimals="2">12</ix:nonFraction>% of their gross earnings subject to certain limitations. The Company contributes an additional <ix:nonFraction id="c81755027" contextRef="d_2021-01-01_2021-12-31_RetirementPlanTypeAxis-ForEmployeesContributing1PercentOfGrossEarningsMember" unitRef="Pure" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent" scale="-2" format="ixt:numdotdecimal" decimals="3">0.5</ix:nonFraction>% of gross earnings for those employees contributing <em style="font: inherit;">1%</em> of their gross earnings and contributes <ix:nonFraction id="c81755029" contextRef="d_2021-01-01_2021-12-31_RetirementPlanTypeAxis-ForEmployeesContributing2To12PercentOfGrossEarningsMember" unitRef="Pure" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent" scale="-2" format="ixt:numdotdecimal" decimals="2">1</ix:nonFraction>% of gross earnings for those employees contributing <em style="font: inherit;">2%</em> to <em style="font: inherit;">12%</em> of their gross earnings. The amounts contributed to the plans by the Company were $<ix:nonFraction id="c81755032" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" scale="0" format="ixt:numdotdecimal" decimals="INF">53,000</ix:nonFraction> and $<ix:nonFraction id="c81755033" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount" scale="0" format="ixt:numdotdecimal" decimals="INF">45,000</ix:nonFraction> for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company does <em style="font: inherit;">not</em> have any other significant pension, profit sharing or similar plans established for its employees. Pursuant to his employment agreement with the Company, Lloyd Hoffman, our President and Chief Executive Officer, is contractually entitled to receive from the Company at the conclusion of each fiscal year a cash bonus in an amount equal to <ix:nonFraction id="c81755036" contextRef="d_2021-01-01_2021-12-31" unitRef="Pure" name="apt:BonusPercentage" scale="-2" format="ixt:numdotdecimal" decimals="2">5</ix:nonFraction>% pre-tax profits of the Company, excluding bonus expense, as presented in the Company&#x2019;s audited consolidated statements of income for such&#xa0;fiscal year, subject to a maximum payment of $<ix:nonFraction id="c81755037" contextRef="i_2021-12-31_TitleOfIndividualAxis-PresidentMember" unitRef="USD" name="apt:BonusMaximumThreshold" scale="0" format="ixt:numdotdecimal" decimals="INF">1,000,000</ix:nonFraction>. The Company accrued $<ix:nonFraction id="c81755038" contextRef="i_2021-12-31_TitleOfIndividualAxis-PresidentMember" unitRef="USD" name="us-gaap:AccruedBonusesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">447,000</ix:nonFraction> for the year ended <em style="font: inherit;"> December 31, 2021, </em>compared to $<ix:nonFraction id="c81755039" contextRef="i_2020-12-31_TitleOfIndividualAxis-PresidentMember" unitRef="USD" name="us-gaap:AccruedBonusesCurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">1,000,000</ix:nonFraction> for <em style="font: inherit;">2020,</em> in connection with the bonus.</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_2021-01-01_2021-12-31" name="us-gaap:SegmentReportingDisclosureTextBlock" id="c2054741" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: left; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">15.</em></b><b> </b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: left; font-family: Times New Roman; 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:c81755042">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;">(<em style="font: inherit;">1</em>) <b>Building Supply</b>: consisting of a line of construction supply weatherization products. The construction supply weatherization products consist of housewrap 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>
   <ix:exclude>
    <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;">
       <em style="font: inherit;">38</em>
      </div>
     </div>
    </div>
    </ix:exclude><ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt"><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>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
   <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">(<em style="font: inherit;">2</em>) <b>Disposable Protective Apparel</b>: 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 <em style="font: inherit;">2</em>). Segment data excludes charges allocated to the principal executive office and other corporate unallocated expenses and income taxes. 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 following table presents net sales for each segment:</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" id="c2054742" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Years Ended December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Building Supply</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c81755051" contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="INF">36,889,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c81755052" contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="INF">30,580,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Disposable Protective Apparel</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755053" contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="INF">31,748,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755054" contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="INF">72,120,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Consolidated net sales</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81755055" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="INF">68,637,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81755056" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="INF">102,700,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td></tr>
</tbody></table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;text-indent:-23pt;">The following table presents the reconciliation of total segment income to total consolidated net income:</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" id="c2054743" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Years Ended December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Building Supply</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c81755057" contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">7,350,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c81755058" contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">5,396,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Disposable Protective Apparel</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755059" contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">6,706,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755060" contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">33,501,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total segment income</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755061" contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">14,056,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755062" contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">38,897,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Unallocated corporate overhead expenses</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755063" contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-CorporateNonSegmentMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">5,556,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755064" contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-CorporateNonSegmentMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">6,649,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Provision for income taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755065" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">1,744,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755066" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">5,360,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Consolidated net income</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81755067" contextRef="d_2021-01-01_2021-12-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">6,756,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81755068" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">26,888,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="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;">
       <em style="font: inherit;"></em></div></div></div></ix:exclude><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;"><em style="font: inherit;">39</em>
      </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>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
   <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">The following table presents net sales and long-lived asset information by geographic area:</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" id="c8D63C378-330D-4FBD-9361-B241E0A35B8C" escape="true" continuedAt="c618136C4-8C6B-46A7-8408-7E0D7C8E78F8">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Years Ended December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net sales by geographic region</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">United States</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755070" contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:Revenues" scale="0" format="ixt:numdotdecimal" decimals="INF">65,844,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755071" contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:Revenues" scale="0" format="ixt:numdotdecimal" decimals="INF">90,495,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">International</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755072" contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember" unitRef="USD" name="us-gaap:Revenues" scale="0" format="ixt:numdotdecimal" decimals="INF">2,793,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755073" contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember" unitRef="USD" name="us-gaap:Revenues" scale="0" format="ixt:numdotdecimal" decimals="INF">12,205,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Consolidated net sales</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81755074" contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember" unitRef="USD" name="us-gaap:Revenues" scale="0" format="ixt:numdotdecimal" decimals="INF">68,637,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c81755075" contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember" unitRef="USD" name="us-gaap:Revenues" scale="0" format="ixt:numdotdecimal" decimals="INF">102,700,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td></tr>
</tbody></table>
   </ix:nonNumeric>
   <p style="margin: 0pt;">&#xa0;</p>
   <ix:continuation id="c618136C4-8C6B-46A7-8408-7E0D7C8E78F8">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><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;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>As of December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">United States</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c81755077" contextRef="i_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">4,623,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c81755078" contextRef="i_2020-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">2,787,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">International</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755079" contextRef="i_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">1,441,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755080" contextRef="i_2020-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">1,566,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81755081" contextRef="i_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">6,064,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81755082" contextRef="i_2020-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">4,353,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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>
   <p style="font-family: &quot;Times New Roman&quot;; 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 years ended <em style="font: inherit;"> December 31, 2021, </em>the Company did <em style="font: inherit;">not</em> generate sales from any single country, except the United States, that were significant to the Company&#x2019;s consolidated net sales. For the year ended <em style="font: inherit;"> December 31, 2021 </em>the Company generated sales of approximately $<ix:nonFraction id="c81755049" contextRef="d_2021-01-01_2021-12-31_StatementGeographicalAxis-AU" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="INF">8,090,000</ix:nonFraction> from Australia. <em style="font: inherit;">No</em> other single 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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">The following table presents the consolidated net property, equipment, goodwill and intangible assets by segment:</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" id="c2054746" escape="true">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>As of December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Building Supply</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c81755083" contextRef="i_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">3,600,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c81755084" contextRef="i_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">1,806,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Disposable Protective Apparel</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755085" contextRef="i_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">1,419,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755086" contextRef="i_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">1,432,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total segment assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755087" contextRef="i_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">5,019,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755088" contextRef="i_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">3,238,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Unallocated corporate assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755089" contextRef="i_2021-12-31_ConsolidationItemsAxis-CorporateNonSegmentMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">1,103,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c81755090" contextRef="i_2020-12-31_ConsolidationItemsAxis-CorporateNonSegmentMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">1,177,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total consolidated assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81755091" contextRef="i_2021-12-31" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">6,122,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c81755092" contextRef="i_2020-12-31" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="INF">4,415,000</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td></tr>
</tbody></table>
   </ix:nonNumeric>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  </ix:nonNumeric>
  <div>
    &#xa0;
  </div>
  <ix:nonNumeric contextRef="d_2021-01-01_2021-12-31" name="us-gaap:ConcentrationRiskDisclosureTextBlock" id="c2054747" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">16.</em> </b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Concentration of Risk</b></p> </td></tr>
</tbody></table>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt; text-align: justify;">The Company maintains its cash and cash equivalents in various bank accounts, the balances of which at times <em style="font: inherit;"> may </em>exceed federally insured limits. The Company has <em style="font: inherit;">not</em> experienced any losses related to these accounts, and management does <em style="font: inherit;">not</em> believe that the Company is exposed to significant credit risk.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">The Company&#x2019;s investments in marketable securities were held in <em style="font: inherit;">one</em> publicly traded entity.&#xa0; The Company recognized a gain on investment in common stock warrants in a prior period and during <em style="font: inherit;">2020</em> recognized a net realized loss of $<ix:nonFraction id="c81755098" contextRef="d_2020-01-01_2020-12-31" unitRef="USD" name="us-gaap:DebtSecuritiesAvailableForSaleRealizedLoss" scale="0" format="ixt:numdotdecimal" decimals="INF">62,000</ix:nonFraction> in the consolidated statement of comprehensive income. The Company was exposed to the fluctuation in the stock price of this investment when it held these securities. As of <em style="font: inherit;"> December 31, 2021 </em>the Company <em style="font: inherit;">no</em> longer holds any investments in marketable securities.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">Management believes that adequate provision has been made for risk of loss on all credit transactions.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">The Company buys a significant amount of its disposable protective apparel products from a limited number of contract manufacturers located in Asia and, to a much lesser extent, a contract manufacturer in Mexico. Management believes that other suppliers could provide similar products at comparable terms. A change in suppliers, however, could cause a delay in shipment and a possible loss of sales, which would affect operating results adversely.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <ix:exclude>
    <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;">
       <em style="font: inherit;"></em></div></div></div></ix:exclude><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;"><em style="font: inherit;">40</em>
      </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>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
   <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">The Building Supply segment buys semi-finished housewrap and synthetic roof underlayment from its joint venture, Harmony, located in India. Although there are a limited number of manufacturers of the particular product, management believes that other suppliers could provide similar products at comparable terms. A change in suppliers, however, could cause a delay in shipment and a possible loss of sales, which would affect operating results adversely.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">The Company provides products to customers located primarily in the United States. Customers accounting for <ix:nonFraction id="c81755102" contextRef="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" name="apt:ConcentrationRiskThresholdPercentage" scale="-2" format="ixt:numdotdecimal" decimals="1">10</ix:nonFraction>% or more of accounts receivable as of <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> and <ix:nonFraction id="c81755105" contextRef="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" name="apt:ConcentrationRiskThresholdPercentage" scale="-2" format="ixt:numdotdecimal" decimals="1">10</ix:nonFraction>% or more of net sales for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> 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_2021-01-01_2021-12-31" name="us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" id="c2054748" 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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Accounts Receivable:</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer A</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755110" contextRef="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember" unitRef="Pure" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" format="ixt:numdotdecimal" decimals="2">13</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755111" contextRef="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember" unitRef="Pure" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" format="ixt:numdotdecimal" decimals="2">11</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer B</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755112" contextRef="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerBMember" unitRef="Pure" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" format="ixt:numdotdecimal" decimals="2">19</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">*</em></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer C</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">*</em></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755115" contextRef="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerCMember" unitRef="Pure" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" format="ixt:numdotdecimal" decimals="2">18</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td><td>&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Net sales:</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer A</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755117" contextRef="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember" unitRef="Pure" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" format="ixt:numdotdecimal" decimals="2">21</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755118" contextRef="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember" unitRef="Pure" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" format="ixt:numdotdecimal" decimals="2">15</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer B</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755119" contextRef="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerBMember" unitRef="Pure" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" format="ixt:numdotdecimal" decimals="2">13</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">*</em></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer C</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">*</em></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c81755122" contextRef="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerCMember" unitRef="Pure" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" format="ixt:numdotdecimal" decimals="1">10</ix:nonFraction></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;"><b>* </b>Customer&#x2019;s balance was below the <em style="font: inherit;">10%</em> threshold for accounts receivable and/or net sales as of and for the year ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;"> December 31, 2020.</em></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_2021-01-01_2021-12-31" name="apt:EmploymentAgreementsTextBlock" id="c2054749" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">17.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Employment Agreements</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;">The Company has entered into an employment agreement with its current President and Chief Executive Officer, which has a term of approximately <span style="-sec-ix-hidden:c81755124">five</span> years and which renews in accordance with its terms.&#xa0; The agreement provides that, if the officer&#x2019;s employment is terminated without cause, as defined in the agreements, the officer is entitled to receive certain severance payments.&#xa0; If termination occurs due to retirement, the officers will enter into a <em style="font: inherit;">four</em>-year consulting arrangement with the Company at a specified percentage of the officer&#x2019;s then current salary. Upon death or disability, the Company will also make certain payments to the officer or the officer&#x2019;s estate or beneficiary, as applicable.</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_2021-01-01_2021-12-31" name="us-gaap:RelatedPartyTransactionsDisclosureTextBlock" id="c2054750" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">18.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; 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;">During <em style="font: inherit;">2021,</em> the Company&#x2019;s only material related party transactions were the Company&#x2019;s transactions with its non-consolidated affiliate, Harmony. See Note <em style="font: inherit;">7.</em></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_2021-01-01_2021-12-31" name="apt:ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" id="c2054751" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">19.</em></b></p> </td><td style="width: auto; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><b>Out-of-Period Adjustment</b></td></tr>
</tbody></table>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">During the financial close for the year ended <em style="font: inherit;"> December 31, 2021, </em>the Company discovered certain immaterial errors in its income tax accounting related to state tax apportionments and deferred tax assets in relation to Incentive Stock Options (&#x201c;ISO&#x201d;).&#xa0; In periods prior to <em style="font: inherit;"> January 1, 2020, </em>the Company should have recognized approximately $<ix:nonFraction id="c81755840" contextRef="d_2019-01-01_2019-12-31" unitRef="USD" name="us-gaap:DeferredTaxExpenseFromStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">291,000</ix:nonFraction> of additional tax expense, primarily related to stock compensation from ISOs&#x2019;. As a result, the Company has increased its accrued liabilities by $<ix:nonFraction id="c81755132" contextRef="d_2021-01-01_2021-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" unitRef="USD" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">12,000</ix:nonFraction> and deferred income tax liabilities by <em style="font: inherit;">$279,000</em> and decreased its retained earnings by $<ix:nonFraction id="c81755137" contextRef="i_2021-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" unitRef="USD" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">291,000</ix:nonFraction> as of <em style="font: inherit;"> December 31, 2019. </em>Furthermore, for the year ended <em style="font: inherit;"> December 31, 2020, </em>the Company should have recognized $<ix:nonFraction id="c81755138" contextRef="d_2021-01-01_2021-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" unitRef="USD" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">154,000</ix:nonFraction> in additional state income tax expense and $<ix:nonFraction id="c81755139" contextRef="d_2021-01-01_2021-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" unitRef="USD" name="us-gaap:DeferredTaxExpenseFromStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">44,000</ix:nonFraction> in additional income tax expense for ISOs that were being treated as deferred tax asset instead of expense. The error was corrected by increasing the provision for income tax in <em style="font: inherit;">2020</em> by $<ix:nonFraction id="c81755141" contextRef="d_2021-01-01_2021-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="INF">198,000</ix:nonFraction>. Accrued liabilities were increased by $<ix:nonFraction id="c81755848" contextRef="i_2020-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" unitRef="USD" name="us-gaap:AccruedLiabilitiesCurrentAndNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="INF">198,000</ix:nonFraction>, deferred income tax liabilities were increased by $<ix:nonFraction id="c81755849" contextRef="i_2020-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" unitRef="USD" name="us-gaap:DeferredIncomeTaxLiabilities" scale="0" format="ixt:numdotdecimal" decimals="INF">279,000</ix:nonFraction> and retained earnings was decreased by $<ix:nonFraction id="c81755850" contextRef="i_2020-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" unitRef="USD" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">489,000</ix:nonFraction> as of <em style="font: inherit;"> December 31, 2020.</em></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">These revisions resulted in a decrease of earnings per share and diluted earnings per share of $.<ix:nonFraction id="c81755851" contextRef="d_2020-01-01_2020-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">01</ix:nonFraction> and $.<ix:nonFraction id="c81755852" contextRef="d_2020-01-01_2020-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">02</ix:nonFraction>, respectively for the year ended <em style="font: inherit;"> December 31, 2020.&#xa0; </em>Management has determined that this revision was <em style="font: inherit;">not</em> material on a quantitative or qualitative basis to the prior period financial statements based on our analysis performed in accordance with the guidance provided by SEC Staff Accounting Bulletins <em style="font: inherit;">No.</em> <em style="font: inherit;">99</em> &#x2013;&#xa0;Materiality&#xa0;and <em style="font: inherit;">No.</em> <em style="font: inherit;">108</em> &#x2013;&#xa0;Considering the Effects of Prior Year Misstatements</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_2021-01-01_2021-12-31" name="us-gaap:SubsequentEventsTextBlock" id="c2054752" escape="true">
   <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">20.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; 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 23pt;">The Company has reviewed and evaluated whether any additional material subsequent events have occurred from <em style="font: inherit;"> December 31, 2021 </em>through the filing date of the Company&#x2019;s Annual Report on Form <em style="font: inherit;">10</em>-K.&#xa0; All appropriate subsequent event disclosures have been made in the consolidated financial statements.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p><ix:exclude><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;">
       <em style="font: inherit;">41</em>
      </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>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>
   <p style="font-family: Times New Roman; font-size: 12pt; font-variant: normal; margin: 0pt;">&#xa0;</p>
   <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Notes to Consolidated Financial Statements</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"></p>
  </ix:nonNumeric>
  <div>
    &#xa0;
  </div>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Item 9.&#xa0;&#xa0;&#xa0; Changes in and Disagreements With Accountants on Accounting and Financial Disclosure. </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;">None.</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;"><b>Item 9A.&#xa0;&#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;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 (i) President and Chief Executive Officer (principal executive officer) and (ii) 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 December 31, 2021 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. Disclosure controls and procedures include controls and procedures designed to ensure that information we are required to disclose is accumulated and communicated to the our management, including our principal executive and principal financial officers as appropriate to allow 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 and financial officers 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>Management</b>&#x2019;<b>s Report on 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;">This report is included in Item 8 and is incorporated herein by reference.</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>Attestation Report of the Independent Registered Public Accounting Firm</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;">The attestation report of our registered public accounting firm on our internal control over financial reporting is included in Part II, Item 8 of 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;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 fourth quarter of the year ended December 31, 2021, there was no change in our internal control over financial reporting (as such term is defined in Rule 13a-15(f) and Rule 15d-15(f) under the Exchange Act) that has materially affected, or is reasonably likely to materially affect, our internal control over financial reporting.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Item 9B.&#xa0;&#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;margin:0pt;">None.</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 9C.&#xa0;&#xa0; Disclosure Regarding Foreign Jurisdictions that Prevent Inspections.</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;">N/A.</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;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;">
       42
     </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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>PART III</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;"><b>Item 10.&#xa0;&#xa0;&#xa0; Directors, Executive Officers and Corporate Governance.</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 have adopted a Code of Business Conduct and Ethics applicable to all of our directors, officers and employees. A copy of the Code of Business Conduct and Ethics is available on the Company&#x2019;s website at www.alphaprotech.com in the &#x201c;Investors&#x201d; section under &#x201c;Corporate Governance.&#x201d; We intend to disclose any amendments to the Code of Business Conduct and Ethics, as well as any waivers for executive officers or directors, on our website at&#xa0;www.alphaprotech.com.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Other information required by this Item is incorporated by reference pursuant to General Instruction G(3) of Form 10-K from the Company&#x2019;s definitive Proxy Statement for the 2022 Annual Meeting of Shareholders to be filed with the Securities and Exchange Commission (&#x201c;SEC&#x201d;) pursuant to Regulation 14A. The registrant&#x2019;s definitive Proxy Statement for the Annual Meeting of Shareholders will be filed with the SEC on or before April 30, 2022.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Item 11.&#xa0;&#xa0;&#xa0; Executive Compensation.</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 information required by this Item is incorporated by reference pursuant to General Instruction G(3) of Form 10-K from the Company&#x2019;s definitive Proxy Statement for the 2022 Annual Meeting of Shareholders to be filed with the SEC pursuant to Regulation 14A. The registrant&#x2019;s definitive Proxy Statement for the Annual Meeting of Shareholders will be filed with the SEC on or before April 30, 2022.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Item 12.&#xa0;&#xa0;&#xa0; Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters.</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>Securities Authorized for Issuance Under Equity Compensation Plans</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 summarizes the securities that have been authorized for issuance as of December 31, 2021 under Alpha Pro Tech, Ltd. 2020 Omnibus Incentive Plan, which was previously approved by our shareholders at the 2020 Annual Meeting of Shareholders. The 2020 Incentive Plan is described in Note 10 to the financial statements in the Company&#x2019;s Annual Report on Form 10-K for the year ended December 31, 2021.</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%;margin-left:auto;margin-right:auto;">
   <tbody>
    <tr>
     <td style="vertical-align:bottom;width:28.1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>Plan Category</b></p> </td>
     <td style="vertical-align:bottom;width:2%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:20.3%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>Number of securities to</b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>be issued upon exercise of outstanding options,</b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>warrants and rights</b></p> </td>
     <td style="vertical-align:bottom;width:2%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:18.6%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>Weighted-average</b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>exercise price of</b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>outstanding options,</b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>warrants and rights</b></p> </td>
     <td style="vertical-align:bottom;width:1.9%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:27%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>Number of securities remaining</b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>available for future issuance under equity compensation plans (excluding securities reflected in column (a))</b></p> </td>
    </tr>

    <tr>
     <td style="border-bottom:solid 1px #000000;vertical-align:bottom;width:28.1%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:2%;">&#xa0;</td>
     <td style="border-bottom:solid 1px #000000;vertical-align:bottom;width:20.3%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>(a)</b></p> </td>
     <td style="vertical-align:bottom;width:2%;">&#xa0;</td>
     <td style="border-bottom:solid 1px #000000;vertical-align:bottom;width:18.6%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>(b)</b></p> </td>
     <td style="vertical-align:bottom;width:1.9%;">&#xa0;</td>
     <td style="border-bottom:solid 1px #000000;vertical-align:bottom;width:27%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>(c)</b></p> </td>
    </tr>

    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:bottom;width:28.1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Equity compensation plans approved by shareholders</p> </td>
     <td style="vertical-align:bottom;width:2%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:20.3%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">427,580</p> </td>
     <td style="vertical-align:bottom;width:2%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:18.6%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">$ 3.50</p> </td>
     <td style="vertical-align:bottom;width:1.9%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:27%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">1,782,614(1)</p> </td>
    </tr>

    <tr style="background-color: rgb(255, 255, 255);">
     <td style="vertical-align:bottom;width:28.1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Equity compensation plans not approved by shareholders</p> </td>
     <td style="vertical-align:bottom;width:2%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:20.3%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">-</p> </td>
     <td style="vertical-align:bottom;width:2%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:18.6%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">-</p> </td>
     <td style="vertical-align:bottom;width:1.9%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:27%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">-</p> </td>
    </tr>

    <tr style="background-color: rgb(204, 238, 255);">
     <td style="vertical-align:bottom;width:28.1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Total</p> </td>
     <td style="vertical-align:bottom;width:2%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:20.3%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">427,580</p> </td>
     <td style="vertical-align:bottom;width:2%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:18.6%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">$ 3.50</p> </td>
     <td style="vertical-align:bottom;width:1.9%;">&#xa0;</td>
     <td style="vertical-align:bottom;width:27%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">1,782,614</p> </td>
    </tr>

   </tbody>
  </table>
  <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="width: 100%; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: top;">
     <td style="width: 18pt;"> <p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">(1)</p> </td>
     <td style="width: auto;"> <p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">Represents 1,782,614 shares of common stock issuable pursuant to our 2020 Plan.</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 other information required by this Item is incorporated by reference pursuant to General Instruction G(3) of Form 10-K from the Company&#x2019;s definitive Proxy Statement for the 2022 Annual Meeting of Shareholders to be filed with the SEC pursuant to Regulation 14A. The registrant&#x2019;s definitive Proxy Statement for the Annual Meeting of Stockholders will be filed with the SEC on or before April 30, 2022.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Item 13.&#xa0;&#xa0;&#xa0; Certain Relationships and Related Transactions, and Director Independence.</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 information required by this Item is incorporated by reference pursuant to General Instruction G(3) of Form 10-K from the Company&#x2019;s definitive Proxy Statement for the 2022 Annual Meeting of Shareholders to be filed with the SEC pursuant to Regulation 14A. The registrant&#x2019;s definitive Proxy Statement for the Annual Meeting of Shareholders will be filed with the SEC on or before April 30, 2022.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Item 14.&#xa0;&#xa0;&#xa0; Principal Accountant Fees and Services.</b></p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">The information required by this Item is incorporated by reference pursuant to General Instruction G(3) of Form 10-K from the Company&#x2019;s definitive Proxy Statement for the 2022 Annual Meeting of Shareholders to be filed with the SEC pursuant to Regulation 14A. The registrant&#x2019;s definitive Proxy Statement for the Annual Meeting of Shareholders will be filed with the SEC on or before April 30, 2022.</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
   <div class="PGFTR" style="text-align: center; width: 100%">
    <div class="hf-row">
     <div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">
       43
     </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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>PART IV</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;"><b>Item 15.&#xa0;&#xa0;&#xa0; Exhibits and Financial Statement Schedules.</b></p>
  <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: top;">
     <td style="width: 45pt;">&#xa0;</td>
     <td style="width: 45pt;"> <p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>(a)(1)</b></p> </td>
     <td style="width: auto;"> <p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>Financial Statements.</b></p> </td>
    </tr>

   </tbody>
  </table>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 90pt;">The consolidated financial statements of the Company and its subsidiaries, included herein in Item 8, are as follows:</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 108pt;">Management&#x2019;s Report on Internal Control over Financial Reporting;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 108pt;">Report of Independent Registered Public Accounting Firm;</p>
  <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 108pt;">Consolidated Balance Sheets &#x2013; December 31, 2021 and 2020;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 108pt;">Consolidated Statements of Income &#x2013; Years Ended December 31, 2021 and 2020;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 108pt;">Consolidated Statements of Comprehensive Income &#x2013; Years Ended December 31, 2021 and 2020;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 108pt;">Consolidated Statements of Shareholders&#x2019; Equity &#x2013; Years Ended December 31, 2021 and 2020;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 108pt;">Consolidated Statements of Cash Flows &#x2013; Years Ended December 31, 2021 and 2020;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 108pt;">Notes to Consolidated Financial Statements.</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="width: 100%; text-indent: 0px;">
   <tbody>
    <tr style="vertical-align: top;">
     <td style="width: 45pt;">&#xa0;</td>
     <td style="width: 45pt;"> <p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>(a)(2)</b></p> </td>
     <td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>Financial Statement Schedules.</b></p> </td>
    </tr>

   </tbody>
  </table>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 90pt;">The financial statement schedules pursuant to this Item are not included herein because they are not required for a smaller reporting company.</p>
  <p style="margin: 0pt 0pt 0pt 45pt; text-align: left; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</p>
  <p style="margin: 0pt 0pt 0pt 45pt; text-align: left; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>(a)(3)&#xa0;&amp; (b) Exhibits.</b></p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 90pt; text-align: justify;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 90pt; text-align: justify;">The following exhibits are filed with this report or incorporated by reference:&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 90pt; text-align: justify;">&#xa0;</p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Item</b>&#xa0;<b>16.&#xa0;&#xa0;&#xa0; Form 10-K Summary.</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;text-indent:36pt;">The Company has elected not to provide a summary of the information contained in this report at this time.</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;">
       44
     </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>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>EXHIBIT INDEX </b></p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>ITEM 15(a)(3)</b></p>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;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:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><span style="text-decoration: underline; ">Exhibit No.</span></p> </td>
     <td style="vertical-align:top;width:89.2%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><span style="text-decoration: underline; ">Description</span></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">3.1.1</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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).</p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">3.1.2</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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).</p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">3.1.3</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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).</p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">3.2</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Bylaws of Alpha Pro Tech, Ltd., incorporated by reference to Exhibit 3(g) to Form 10-K for the year ended December 31, 1994, filed on March 31, 1995 (File No. 000-19893) (P).</p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.1</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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/000143774920004678/ex_175760.htm" style="-sec-extract:exhibit;">Description of securities registered pursuant to Section 12 of the Exchange Act, incorporated by reference to Exhibit 4.1 to Form 10-K for the year ended December 31, 2020, filed on March 10, 2020 (File No. 001-15725).</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.1A</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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/000110465910033428/a10-11855_1ex10d1.htm" style="-sec-extract:exhibit;">Alpha Pro Tech, Ltd. 2004 Stock Option Plan (As Amended on June 7, 2010), incorporated by reference to Exhibit 10.1 to Form 8-K, filed on June 11, 2010.*</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.2</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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/000104746904036874/a2148339zex-4_4.htm" style="-sec-extract:exhibit;">Non-Qualified Stock Option Agreement of John Ritota, incorporated by reference to Exhibit 4.4 to Form S-8, filed on December 13, 2004 (File No. 333-121184).*</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.3</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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/000104746904036874/a2148339zex-4_5.htm" style="-sec-extract:exhibit;">Non-Qualified Stock Option Agreement of Russell Manock, incorporated by reference to Exhibit 4.5 to Form S-8, filed on December 13, 2004 (File No. 333-121184).*</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.5</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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/000104746904036874/a2148339zex-4_8.htm" style="-sec-extract:exhibit;">Incentive Stock Option Agreement of Lloyd Hoffman, incorporated by reference to Exhibit 4.8 to Form S-8, filed on December 13, 2004 (File No. 333-121184).*</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.6</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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/000143774915019813/ex10-2.htm" style="-sec-extract:exhibit;">Employment Agreement between the Company and Alexander Millar, dated May 15, 2015, incorporated by reference to Exhibit 10.2 to Form 10-Q/A for the quarter ended June 30, 2015, filed on November 5, 2015 (File No. 001-15725).*</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.7</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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/000143774916038299/ex10-1.htm" style="-sec-extract:exhibit;">Employment Agreement between the Company and Lloyd Hoffman, dated August 31, 2016, incorporated by reference to Exhibit 10.1 to Form 8-K, filed on September 2, 2016 (File No. 001-15725).*</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">10.7A</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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/000143774917017629/ex_97567.htm" style="-sec-extract:exhibit;">Amendment One to Employment Agreement between the Company and Lloyd Hoffman, dated October 24, 2017, incorporated by reference to Exhibit 10.1 to Form 8-K, filed on October 26, 2017 (File No. 001-15725).*</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.8</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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/000143774920013146/ex_190492.htm" style="-sec-extract:exhibit;">Alpha Pro Tech, Ltd. 2020 Omnibus Incentive Plan, incorporated by reference to Exhibit 10.1 to Form 8-K, filed on June 15, 2020 (File No. 001-15725).*</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.8A</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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/000143774921005551/ex_232309.htm" style="-sec-extract:exhibit;">First Amendment to the Alpha Pro Tech, Ltd. 2020 Omnibus Incentive Plan, incorporated by reference to Exhibit 10.8A to Form 10-K for the year ended December 31, 2020, filed on March 10, 2021 (File No. 001-15725).*</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.9</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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/000143774921005551/ex_232310.htm" style="-sec-extract:exhibit;">Form of Restricted Stock Award Agreement for Non-Employee Directors, incorporated by reference to Exhibit 10.9 to Form 10-K for the year ended December 31, 2020, filed on March 10, 2021 (File No. 001-15725).*</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">14</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <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/000110465904011895/a04-5099_2ex10dr.htm" style="-sec-extract:exhibit;">Alpha Pro Tech, Ltd. Code of Business Conduct and Ethics, incorporated by reference to Exhibit 10(r) to Form 10-K/A, filed on April 29, 2004 (File No. 001-15725).</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">21</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_344002.htm" style="-sec-extract:exhibit;">Subsidiaries of Alpha Pro Tech, Ltd.</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">23.1</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_344003.htm" style="-sec-extract:exhibit;">Consent of Independent Registered Public Accounting Firm</a></p> </td>
    </tr>

    <tr>
     <td style="vertical-align:top;width:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">31.1</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 72pt;text-indent:-72pt;"><a href="ex_344004.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:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">31.2</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_344006.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:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">32.1</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_344006.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:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">32.2</p> </td>
     <td style="vertical-align:top;width:89.2%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_344007.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:12.8%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">101</p> </td>
     <td style="vertical-align:top;width:89.2%;">Interactive Data Files for Alpha Pro Tech, Ltd&#x2019;s Form 10-K for the period ended December 31, 2021, formatted in Inline XBRL.</td>
    </tr>

    <tr>
     <td style="vertical-align: top; width: 12.8%; text-align: center;">104</td>
     <td style="vertical-align:top;width:89.2%;">Cover Page Interactive Data File (embedded within the Inline XBRL and contained in Exhibit 101)</td>
    </tr>

    <tr>
     <td style="vertical-align: top; width: 12.8%; text-align: center;">&#xa0;</td>
     <td style="vertical-align:top;width:89.2%;">&#xa0;</td>
    </tr>

    <tr>
     <td style="vertical-align: top; width: 12.8%; text-align: center;">&#xa0;</td>
     <td style="vertical-align:top;width:89.2%;">&#xa0;</td>
    </tr>

    <tr>
     <td style="vertical-align: top; width: 12.8%; text-align: center;">&#xa0;</td>
     <td style="vertical-align:top;width:89.2%;">* Indicates a management contract or compensatory plan or arrangement.</td>
    </tr>

    <tr>
     <td style="vertical-align: top; width: 12.8%; text-align: center;">&#xa0;</td>
     <td style="vertical-align:top;width:89.2%;"><b>(</b>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 0pt 0pt 36pt;text-indent:36pt;">&#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;">
       45
     </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>
  <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;">Pursuant to the requirements of Section 13 or 15(d) 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="margin: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</p>
  <table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;">
   <tbody>
    <tr>
     <td style="width: 8%;">&#xa0;</td>
     <td style="width: 26%;">&#xa0;</td>
     <td style="width: 11%;">&#xa0;</td>
     <td colspan="2" rowspan="1" style="width: 5%;"><b>ALPHA PRO TECH, LTD</b>.</td>
     <td style="width: 15%;">&#xa0;</td>
    </tr>

    <tr>
     <td style="width: 8%;">&#xa0;</td>
     <td style="width: 26%;">&#xa0;</td>
     <td style="width: 11%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
     <td style="width: 35%;">&#xa0;</td>
     <td style="width: 15%;">&#xa0;</td>
    </tr>

    <tr>
     <td style="width: 8%;">DATE:</td>
     <td style="width: 26%; border-bottom: 1px solid rgb(0, 0, 0);">March 11, 2022</td>
     <td style="width: 11%;">&#xa0;</td>
     <td style="width: 5%;">BY:</td>
     <td style="width: 35%; border-bottom: 1px solid rgb(0, 0, 0);">/s/Lloyd Hoffman</td>
     <td style="width: 15%;">&#xa0;</td>
    </tr>

    <tr>
     <td style="width: 8%;">&#xa0;</td>
     <td style="width: 26%;">&#xa0;</td>
     <td style="width: 11%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
     <td style="width: 35%;">Lloyd Hoffman</td>
     <td style="width: 15%;">&#xa0;</td>
    </tr>

    <tr>
     <td style="width: 8%;">&#xa0;</td>
     <td style="width: 26%;">&#xa0;</td>
     <td style="width: 11%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
     <td style="width: 35%;">President and Chief Executive Officer</td>
     <td style="width: 15%;">&#xa0;</td>
    </tr>

    <tr>
     <td style="width: 8%;">&#xa0;</td>
     <td style="width: 26%;">&#xa0;</td>
     <td style="width: 11%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
     <td style="width: 35%;">&#xa0;</td>
     <td style="width: 15%;">&#xa0;</td>
    </tr>

    <tr>
     <td style="width: 8%;">DATE:</td>
     <td style="width: 26%; border-bottom: 1px solid rgb(0, 0, 0);">March 11, 2022</td>
     <td style="width: 11%;">&#xa0;</td>
     <td style="width: 5%;">BY:</td>
     <td style="width: 35%; border-bottom: 1px solid rgb(0, 0, 0);">/s/Colleen McDonald</td>
     <td style="width: 15%;">&#xa0;</td>
    </tr>

    <tr>
     <td style="width: 8%;">&#xa0;</td>
     <td style="width: 26%;">&#xa0;</td>
     <td style="width: 11%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
     <td style="width: 35%;">Colleen McDonald</td>
     <td style="width: 15%;">&#xa0;</td>
    </tr>

    <tr>
     <td style="width: 8%;">&#xa0;</td>
     <td style="width: 26%;">&#xa0;</td>
     <td style="width: 11%;">&#xa0;</td>
     <td style="width: 5%;">&#xa0;</td>
     <td style="width: 35%;">Chief Financial Officer</td>
     <td style="width: 15%;">&#xa0;</td>
    </tr>

   </tbody>
  </table>
  <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:63pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Pursuant to the requirements of the Securities Exchange Act of 1934, this report has been signed below by the following persons on behalf of the registrant and in the capacities and on the dates indicated.</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;"><span style="text-decoration: underline; ">/s/&#xa0;Lloyd Hoffman</span></p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Lloyd Hoffman, President and Chief Executive Officer and Director</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">(Principal Executive Officer) &#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;"><span style="text-decoration: underline; ">/s/Colleen McDonald</span></p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">Colleen McDonald, Chief Financial Officer</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">(Principal Financial and Accounting Officer)</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;"><span style="text-decoration: underline; ">/s</span><b><span style="text-decoration: underline; ">/</span></b><span style="text-decoration: underline; ">Danny Montgomery</span></p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">Danny Montgomery, Senior Vice President Manufacturing and Director</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;"><span style="text-decoration: underline; ">/s/Donna Millar</span></p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">Donna Millar, Investor Relations and Director</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;"><span style="text-decoration: underline; ">/s/David Garcia</span></p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">David Garcia, Director</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;"><span style="text-decoration: underline; ">/s/Russ Manock</span></p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">Russ Manock, Director</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;"><span style="text-decoration: underline; ">/s/Dr. John Ritota</span></p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">Dr. John Ritota, Director</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">&#xa0;</p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;"><span style="text-decoration: underline; ">/s/James Buchan</span></p>
  <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt; text-align: justify;">James Buchan, Director</p>
  <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#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;">
       46
     </div>
    </div>
   </div>
  </div>
 </body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-21
<SEQUENCE>2
<FILENAME>ex_344002.htm
<DESCRIPTION>EXHIBIT 21
<TEXT>
<html><head>
	<title>ex_344002.htm</title>

	<!-- Generated by ThunderDome Portal - 3/7/2022 9:03:40 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-size:10pt;font-family:'Times New Roman';padding:0in .1in;">
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;"><b>EXHIBIT 21</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;"><b>SUBSIDIARIES OF ALPHA PRO TECH, LTD.</b></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: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><u>Name of Subsidiary</u></b></p>
			</td>
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><u>State of Incorporation</u></b></p>
			</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Alpha Pro Tech, Inc.</p>
			</td>
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Oklahoma</p>
			</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Alpha ProTech Engineered Products, Inc.</p>
			</td>
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Delaware</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>

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

<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-23.1
<SEQUENCE>3
<FILENAME>ex_344003.htm
<DESCRIPTION>EXHIBIT 23.1
<TEXT>
<html><head>
	<title>ex_344003.htm</title>

	<!-- Generated by ThunderDome Portal - 3/11/2022 1:11:18 AM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-size:10pt;font-family:'Times New Roman';padding:0in .1in;">
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;"><b>EXHIBIT 23.1</b></p>

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>CONSENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</b></p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">As an independent registered public accounting firm, we hereby consent to the incorporation by reference in the Registration Statements on&nbsp;Form&nbsp;S-8 ( No.&nbsp;333-121184, No.&nbsp;333-169056, and No. 333-249092) of our report dated&nbsp;March 11, 2022, relating to the consolidated financial statements of&nbsp;Alpha Pro Tech,&nbsp;Ltd. as of and for the two years ended December 31, 2021 and 2020 included in the Annual Report on Form&nbsp;10-K of Alpha Pro Tech,&nbsp;Ltd. for the year ended December 31, 2021.</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-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;">

		<tr>
			<td style="vertical-align:top;width:23.1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">/s/ Tanner LLC</p>
			</td>
			<td style="vertical-align:top;width:23.1%;">&nbsp;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:23.1%;">&nbsp;</td>
			<td style="vertical-align:top;width:23.1%;">&nbsp;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:23.1%;">Lehi, Utah</td>
			<td style="vertical-align:top;width:23.1%;">&nbsp;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:23.1%;">March 11, 2022</td>
			<td style="vertical-align:middle;width:auto;">&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-31.1
<SEQUENCE>4
<FILENAME>ex_344004.htm
<DESCRIPTION>EXHIBIT 31.1
<TEXT>
<html><head>
	<title>ex_344004.htm</title>

	<!-- Generated by ThunderDome Portal - 3/7/2022 8:59:18 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding: 0in 0.1in; cursor: auto;">
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;"><b>EXHIBIT 31.1</b></p>

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

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

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

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">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="margin: 0pt; text-align: left; font-family: Times New Roman; font-size: 10pt;">1.</p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; font-family: Times New Roman; font-size: 10pt; text-align: justify;">I have reviewed this Annual Report on Form 10-K 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;font-size: 10pt;font-variant:normal;margin:0pt;">2.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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;font-size: 10pt;font-variant:normal;margin:0pt;">3.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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;font-size: 10pt;font-variant:normal;margin:0pt;">4.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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: 36pt;">
			<p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;">a)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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: 36pt;">
			<p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;">b)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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: 36pt;">
			<p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;">c)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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: 36pt;">
			<p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;">d)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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;font-size: 10pt;font-variant:normal;margin:0pt;">5.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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: 36pt;">
			<p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;">a)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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: 36pt;">
			<p style="margin: 0pt; text-align: left; font-family: Times New Roman; font-size: 10pt;">b)</p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; font-family: Times New Roman; font-size: 10pt; 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 border="0" cellpadding="0" cellspacing="0" style="text-indent: 0; width: 100%;font-family: 'Times New Roman', Times, serif; font-size: 10pt">

		<tr>
			<td align="left" style="text-align: left; width: 6%;" valign="top" width="50%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font>DATE:</p>
			</td>
			<td style="text-align: left; width: 20%; border-bottom: 1px solid rgb(0, 0, 0);" valign="top" width="3%">March 11, 2022</td>
			<td style="text-align: left; width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="text-align: left; width: 3%;" valign="top" width="3%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">BY: </font></p>
			</td>
			<td align="left" nowrap="nowrap" style="border-bottom: 1px solid rgb(0, 0, 0); width: 32%;" valign="top" width="35%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">/s/&nbsp;</font>Lloyd Hoffman<font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt"> </font></p>
			</td>
			<td style="width: 21%;" valign="top" width="12%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
		</tr>
		<tr>
			<td style="width: 6%;" valign="top" width="50%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 20%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 3%;" valign="top" width="3%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 32%;" valign="top" width="35%">
			<p style="margin-top: 0; margin-bottom: 0;">Lloyd Hoffman</p>
			</td>
			<td style="width: 21%;" valign="top" width="12%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
		</tr>
		<tr>
			<td style="width: 6%;" valign="top" width="50%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 20%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 3%;" valign="top" width="3%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 32%;" valign="top" width="35%">
			<p style="margin-top: 0; margin-bottom: 0;">President and Chief Executive Officer</p>
			</td>
			<td style="width: 21%;" valign="top" width="12%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
		</tr>
		<tr>
			<td style="width: 6%;" valign="top" width="50%">&nbsp;</td>
			<td style="width: 20%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 3%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 32%;" valign="top" width="35%">(Principal Executive Officer)</td>
			<td style="width: 21%;" valign="top" width="12%">&nbsp;</td>
		</tr>

</table>

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

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


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

	<!-- Generated by ThunderDome Portal - 3/7/2022 8:53:42 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding: 0in 0.1in; cursor: auto;">
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;"><b>EXHIBIT 31.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;"><b>Certification</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>

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

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">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;font-size: 10pt;font-variant:normal;margin:0pt;">1.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">I have reviewed this Annual Report on Form 10-K 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;font-size: 10pt;font-variant:normal;margin:0pt;">2.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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;font-size: 10pt;font-variant:normal;margin:0pt;">3.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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;font-size: 10pt;font-variant:normal;margin:0pt;">4.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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: 36pt;">
			<p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;">a)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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: 36pt;">
			<p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;">b)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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: 36pt;">
			<p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;">c)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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: 36pt;">
			<p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;">d)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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;font-size: 10pt;font-variant:normal;margin:0pt;">5.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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: 36pt;">
			<p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;">a)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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: 36pt;">
			<p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;">b)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: Times New Roman; 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 border="0" cellpadding="0" cellspacing="0" style="text-indent: 0; width: 100%;font-family: 'Times New Roman', Times, serif; font-size: 10pt">

		<tr>
			<td align="left" style="text-align: left; width: 6%;" valign="top" width="50%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font>DATE:</p>
			</td>
			<td style="text-align: left; width: 20%; border-bottom: 1px solid rgb(0, 0, 0);" valign="top" width="3%">March 11, 2022</td>
			<td style="text-align: left; width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="text-align: left; width: 3%;" valign="top" width="3%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">BY: </font></p>
			</td>
			<td align="left" nowrap="nowrap" style="border-bottom: 1px solid rgb(0, 0, 0); width: 32%;" valign="top" width="35%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">/s/&nbsp;</font>Colleen McDonald<font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt"> </font></p>
			</td>
			<td style="width: 21%;" valign="top" width="12%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
		</tr>
		<tr>
			<td style="width: 6%;" valign="top" width="50%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 20%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 3%;" valign="top" width="3%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 32%;" valign="top" width="35%">
			<p style="margin-top: 0; margin-bottom: 0;">Colleen McDonald</p>
			</td>
			<td style="width: 21%;" valign="top" width="12%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
		</tr>
		<tr>
			<td style="width: 6%;" valign="top" width="50%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 20%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 3%;" valign="top" width="3%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 32%;" valign="top" width="35%">
			<p style="margin-top: 0; margin-bottom: 0;">Chief Financial Officer</p>
			</td>
			<td style="width: 21%;" valign="top" width="12%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
		</tr>
		<tr>
			<td style="width: 6%;" valign="top" width="50%">&nbsp;</td>
			<td style="width: 20%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 3%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 32%;" valign="top" width="35%">(Principal Financial and Accounting Officer)</td>
			<td style="width: 21%;" valign="top" width="12%">&nbsp;</td>
		</tr>

</table>

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

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


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

	<!-- Generated by ThunderDome Portal - 3/7/2022 8:44:59 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding: 0in 0.1in; cursor: auto;">
<p style="margin: 0pt; text-align: right;">&nbsp;</p>

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

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

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

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

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">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;text-align:justify;margin:0pt;">In connection with the Annual Report of Alpha Pro Tech, Ltd. on Form 10-K for the year ended December 31, 2021 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. ss. 1350, as adopted pursuant to ss. 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>

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

		<tr style="vertical-align: top;">
			<td style="width: 18pt;">
			<p style="margin: 0pt; text-align: left; font-family: Times New Roman; font-size: 10pt;">(1)</p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; font-family: Times New Roman; font-size: 10pt; text-align: justify;">The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; 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: 18pt;">
			<p style="margin: 0pt; text-align: left; font-family: Times New Roman; font-size: 10pt;">(2)</p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; font-family: Times New Roman; font-size: 10pt; text-align: justify;">The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</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 border="0" cellpadding="0" cellspacing="0" style="text-indent: 0; width: 100%;font-family: 'Times New Roman', Times, serif; font-size: 10pt">

		<tr>
			<td align="left" style="text-align: left; width: 6%;" valign="top" width="50%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font>DATE:</p>
			</td>
			<td style="text-align: left; width: 20%; border-bottom: 1px solid rgb(0, 0, 0);" valign="top" width="3%">March 11, 2022</td>
			<td style="text-align: left; width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="text-align: left; width: 3%;" valign="top" width="3%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">BY: </font></p>
			</td>
			<td align="left" nowrap="nowrap" style="border-bottom: 1px solid rgb(0, 0, 0); width: 32%;" valign="top" width="35%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">/s/&nbsp;</font>Lloyd Hoffman<font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt"> </font></p>
			</td>
			<td style="width: 21%;" valign="top" width="12%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
		</tr>
		<tr>
			<td style="width: 6%;" valign="top" width="50%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 20%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 3%;" valign="top" width="3%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 32%;" valign="top" width="35%">
			<p style="margin-top: 0; margin-bottom: 0;">Lloyd Hoffman</p>
			</td>
			<td style="width: 21%;" valign="top" width="12%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
		</tr>
		<tr>
			<td style="width: 6%;" valign="top" width="50%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 20%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 3%;" valign="top" width="3%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 32%;" valign="top" width="35%">
			<p style="margin-top: 0; margin-bottom: 0;">President and Chief Executive Officer</p>
			</td>
			<td style="width: 21%;" valign="top" width="12%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></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>

<p style="font-family:Times New Roman;font-size:12pt;font-variant:normal;margin:0pt;text-indent:9pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b> </b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b> </b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>

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

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&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>7
<FILENAME>ex_344007.htm
<DESCRIPTION>EXHIBIT 32.2
<TEXT>
<html><head>
	<title>ex_344007.htm</title>

	<!-- Generated by ThunderDome Portal - 3/7/2022 8:38:52 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding: 0in 0.1in; cursor: auto;">
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;"><b>EXHIBIT 32.2</b></p>

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

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

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

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">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;text-align:justify;margin:0pt;">In connection with the Annual Report of Alpha Pro Tech, Ltd. on Form 10-K for the year ended December 31, 2021 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. ss. 1350, as adopted pursuant to ss. 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>

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

		<tr style="vertical-align: top;">
			<td style="width: 18pt;">
			<p style="margin: 0pt; text-align: left; font-family: Times New Roman; font-size: 10pt;">(1)</p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; font-family: Times New Roman; font-size: 10pt; text-align: justify;">The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; 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: 18pt;">
			<p style="margin: 0pt; text-align: left; font-family: Times New Roman; font-size: 10pt;">(2)</p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; font-family: Times New Roman; font-size: 10pt; text-align: justify;">The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</p>
			</td>
		</tr>

</table>

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

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

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

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

		<tr>
			<td align="left" style="text-align: left; width: 6%;" valign="top" width="50%">
			<p style="margin-top: 0; margin-bottom: 0;">DATE:<font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt"> </font></p>
			</td>
			<td style="text-align: left; width: 20%; border-bottom: 1px solid rgb(0, 0, 0);" valign="top" width="3%">March 11, 2022</td>
			<td style="text-align: left; width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="text-align: left; width: 3%;" valign="top" width="3%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">BY: </font></p>
			</td>
			<td align="left" nowrap="nowrap" style="border-bottom: 1px solid rgb(0, 0, 0); width: 32%;" valign="top" width="35%">
			<p style="margin-top: 0; margin-bottom: 0;">/s/Colleen McDonald<font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 21%;" valign="top" width="12%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
		</tr>
		<tr>
			<td style="width: 6%;" valign="top" width="50%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 20%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 3%;" valign="top" width="3%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 32%;" valign="top" width="35%">
			<p style="margin-top: 0; margin-bottom: 0;">Colleen McDonald</p>
			</td>
			<td style="width: 21%;" valign="top" width="12%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
		</tr>
		<tr>
			<td style="width: 6%;" valign="top" width="50%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 20%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 18%;" valign="top" width="3%">&nbsp;</td>
			<td style="width: 3%;" valign="top" width="3%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
			<td style="width: 32%;" valign="top" width="35%">
			<p style="margin-top: 0; margin-bottom: 0;">Chief Financial Officer</p>
			</td>
			<td style="width: 21%;" valign="top" width="12%">
			<p style="margin-top: 0; margin-bottom: 0;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt">&nbsp;</font></p>
			</td>
		</tr>

</table>

<p style="font-family:Times New Roman;font-size:12pt;font-variant:normal;margin:0pt;text-indent:9pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b> </b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b> </b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>

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

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

<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>8
<FILENAME>apt-20211231.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 05:33PM UTC 2022-03-11--><xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:apt="http://www.alphaprotech.com/20211231" xmlns:country="http://xbrl.sec.gov/country/2021" xmlns:currency="http://xbrl.sec.gov/currency/2021" xmlns:dei="http://xbrl.sec.gov/dei/2021q4" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:exch="http://xbrl.sec.gov/exch/2021" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:naics="http://xbrl.sec.gov/naics/2021" xmlns:sic="http://xbrl.sec.gov/sic/2021" xmlns:srt="http://fasb.org/srt/2021-01-31" xmlns:srt-types="http://fasb.org/srt-types/2021-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2021" xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31" xmlns:us-types="http://fasb.org/us-types/2021-01-31" 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/20211231">
  <xsd:import namespace="http://xbrl.sec.gov/country/2021" schemaLocation="https://xbrl.sec.gov/country/2021/country-2021.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/naics/2021" schemaLocation="https://xbrl.sec.gov/naics/2021/naics-2021.xsd"/>
  <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://fasb.org/us-gaap/2021-01-31" schemaLocation="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd"/>
  <xsd:import namespace="http://fasb.org/srt/2021-01-31" schemaLocation="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/dei/2021q4" schemaLocation="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/stpr/2021" schemaLocation="https://xbrl.sec.gov/stpr/2021/stpr-2021.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/sic/2021" schemaLocation="https://xbrl.sec.gov/sic/2021/sic-2021.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/exch/2021" schemaLocation="https://xbrl.sec.gov/exch/2021/exch-2021.xsd"/>
  <xsd:import namespace="http://fasb.org/us-types/2021-01-31" schemaLocation="https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/currency/2021" schemaLocation="https://xbrl.sec.gov/currency/2021/currency-2021.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://fasb.org/srt-types/2021-01-31" schemaLocation="https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-31.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-20211231_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-20211231_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-20211231_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-20211231_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/20211231/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-consolidated-balance-sheets-" roleURI="http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">001 - Statement - Consolidated Balance Sheets</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-consolidated-balance-sheets-parentheticals" roleURI="http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">002 - Statement - Consolidated Balance Sheets (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-comprehensive-income-unaudited" roleURI="http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">003 - 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/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">004 - 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-consolidated-statements-of-cash-flows" roleURI="http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">005 - Statement - Consolidated Statements of Cash Flows</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/20211231/role/statement-note-1-the-company">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">006 - 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-summary-of-significant-accounting-policies" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">007 - Disclosure - Note 2 - Summary of Significant Accounting Policies</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-investments" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-3-investments">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">008 - Disclosure - Note 3 - Investments</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-inventories" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-4-inventories">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">009 - Disclosure - Note 4 - 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-5-property-and-equipment" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">010 - Disclosure - Note 5 - Property and Equipment</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-goodwill-and-intangible-assets" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">011 - Disclosure - Note 6 - Goodwill and Intangible Assets</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-equity-investments-in-unconsolidated-affiliate" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">012 - Disclosure - Note 7 - Equity Investments 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-8-accrued-liabilities" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">013 - Disclosure - Note 8 - 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-9-notes-payable" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">014 - Disclosure - Note 9 - Notes Payable</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-shareholders-equity" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">015 - Disclosure - Note 10 - Shareholders' Equity</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-income-taxes" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">016 - Disclosure - Note 11 - 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-12-leases-" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">017 - Disclosure - Note 12 - 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-13-legal" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-13-legal">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">018 - Disclosure - Note 13 - Legal</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-employee-benefit-plans" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">019 - Disclosure - Note 14 - Employee Benefit Plans</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-activity-of-business-segments" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">020 - Disclosure - Note 15 - 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-16-concentration-of-risk-" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">021 - Disclosure - Note 16 - Concentration of Risk</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-17-employment-agreements" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">022 - Disclosure - Note 17 - Employment Agreements</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-18-related-party-transactions" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-18-related-party-transactions">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">023 - Disclosure - Note 18 - 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-19-outofperiod-adjustment-" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">024 - Disclosure - Note 19 - Out-of-Period Adjustment</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-20-subsequent-events" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-20-subsequent-events">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">025 - Disclosure - Note 20 - 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-significant-accounting-policies-policies" roleURI="http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">026 - Disclosure - Significant Accounting Policies (Policies)</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-summary-of-significant-accounting-policies-tables" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">027 - Disclosure - Note 2 - Summary of Significant Accounting Policies (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-4-inventories-tables" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">028 - Disclosure - Note 4 - 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-5-property-and-equipment-tables" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">029 - Disclosure - Note 5 - Property and Equipment (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-6-goodwill-and-intangible-assets-tables" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">030 - Disclosure - Note 6 - Goodwill and Intangible Assets (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-accrued-liabilities-tables" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">031 - Disclosure - Note 8 - 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-10-shareholders-equity-tables" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">032 - Disclosure - Note 10 - Shareholders' Equity (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-income-taxes-tables" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">033 - Disclosure - Note 11 - Income Taxes (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-12-leases-tables" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">034 - Disclosure - Note 12 - 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-15-activity-of-business-segments-tables" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">035 - Disclosure - Note 15 - 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-16-concentration-of-risk-tables" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">036 - Disclosure - Note 16 - Concentration of Risk (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-2-summary-of-significant-accounting-policies-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">037 - Disclosure - Note 2 - Summary of Significant Accounting Policies (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-2-summary-of-significant-accounting-policies-property-and-equipment-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">038 - Disclosure - Note 2 - Summary of Significant Accounting Policies - Property and Equipment (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-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-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">039 - Disclosure - Note 2 - Summary of Significant Accounting Policies - 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-3-investments-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">040 - Disclosure - Note 3 - Investments (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-4-inventories-inventories-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">041 - Disclosure - Note 4 - 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-5-property-and-equipment-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">042 - Disclosure - Note 5 - Property and Equipment (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-5-property-and-equipment-property-and-equipment-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">043 - Disclosure - Note 5 - Property and Equipment - Property and Equipment (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-goodwill-and-intangible-assets-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">044 - Disclosure - Note 6 - Goodwill and Intangible Assets (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-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">045 - Disclosure - Note 6 - Goodwill and Intangible Assets - Definite-lived 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-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">046 - Disclosure - Note 6 - Goodwill and Intangible Assets - Estimated Future Amortization Expense Related to Definite-lived 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-7-equity-investments-in-unconsolidated-affiliate-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">047 - Disclosure - Note 7 - Equity Investments 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-8-accrued-liabilities-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">048 - Disclosure - Note 8 - Accrued Liabilities (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-8-accrued-liabilities-accrued-liabilities-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">049 - Disclosure - Note 8 - 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-9-notes-payable-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">050 - Disclosure - Note 9 - Notes Payable (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-shareholders-equity-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">051 - Disclosure - Note 10 - Shareholders' Equity (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-shareholders-equity-stock-option-activity-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">052 - Disclosure - Note 10 - Shareholders' Equity - 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-10-shareholders-equity-information-about-stock-options-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">053 - Disclosure - Note 10 - Shareholders' Equity - Information About Stock Options (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-income-taxes-provision-for-income-taxes-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">054 - Disclosure - Note 11 - Income Taxes - Provision for Income Taxes (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-income-taxes-deferred-income-tax-assets-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">055 - Disclosure - Note 11 - Income Taxes - Deferred Income Tax 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-income-taxes-income-tax-reconciliation-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">056 - Disclosure - Note 11 - Income Taxes - Income Tax Reconciliation (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-12-leases-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">057 - Disclosure - Note 12 - 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-12-leases-future-minimum-lease-payment-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">058 - Disclosure - Note 12 - 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-14-employee-benefit-plans-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">059 - Disclosure - Note 14 - Employee Benefit Plans (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-15-activity-of-business-segments-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">060 - Disclosure - Note 15 - 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-15-activity-of-business-segments-consolidated-net-sales-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">061 - Disclosure - Note 15 - 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-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">062 - Disclosure - Note 15 - 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-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">063 - Disclosure - Note 15 - Activity of Business Segments - 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-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">064 - Disclosure - Note 15 - 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-16-concentration-of-risk-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">065 - Disclosure - Note 16 - Concentration of Risk (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-16-concentration-of-risk-customer-concentration-details" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">066 - Disclosure - Note 16 - Concentration of Risk - Customer Concentration (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-17-employment-agreements-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">067 - Disclosure - Note 17 - Employment Agreements (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-19-outofperiod-adjustment-details-textual" roleURI="http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">068 - Disclosure - Note 19 - Out-of-Period Adjustment (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 id="apt_BonusMaximumThreshold" name="BonusMaximumThreshold" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="apt_BonusPercentage" name="BonusPercentage" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:percentItemType" 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_ConcentrationRiskThresholdPercentage" name="ConcentrationRiskThresholdPercentage" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:percentItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" name="CumulativeEquityInIncomeOfUnconsolidatedAffiliate" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="apt_CustomerAMember" name="CustomerAMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_CustomerBMember" name="CustomerBMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_CustomerCMember" name="CustomerCMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_DeferredTaxAssetsInventoryCurrent" name="DeferredTaxAssetsInventoryCurrent" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits" name="DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent" name="DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent" name="DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" 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 abstract="true" id="apt_EmployeesAndDirectorsMember" name="EmployeesAndDirectorsMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_EmploymentAgreementTerm" name="EmploymentAgreementTerm" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_EmploymentAgreementsTextBlock" name="EmploymentAgreementsTextBlock" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" name="ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" name="ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" name="ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_ExpenseToAcquireInventory" name="ExpenseToAcquireInventory" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_ForEmployeesContributing1PercentOfGrossEarningsMember" name="ForEmployeesContributing1PercentOfGrossEarningsMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" name="ForEmployeesContributing2To12PercentOfGrossEarningsMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" 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 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 abstract="true" id="apt_PatentsAndTrademarksMember" name="PatentsAndTrademarksMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" 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 id="apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock" name="PropertyPlantAndEquipmentUsefulLivesTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock" name="RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType" 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_TemporaryDifferencesAbstract" name="TemporaryDifferencesAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" 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-shareholders-equity-information-about-stock-options-details" name="statement-statement-note-10-shareholders-equity-information-about-stock-options-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-10-shareholders-equity-stock-option-activity-details" name="statement-statement-note-10-shareholders-equity-stock-option-activity-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-10-shareholders-equity-tables" name="statement-statement-note-10-shareholders-equity-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-11-income-taxes-deferred-income-tax-assets-details" name="statement-statement-note-11-income-taxes-deferred-income-tax-assets-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-11-income-taxes-income-tax-reconciliation-details" name="statement-statement-note-11-income-taxes-income-tax-reconciliation-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-11-income-taxes-provision-for-income-taxes-details" name="statement-statement-note-11-income-taxes-provision-for-income-taxes-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-11-income-taxes-tables" name="statement-statement-note-11-income-taxes-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-12-leases-future-minimum-lease-payment-details" name="statement-statement-note-12-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-12-leases-tables" name="statement-statement-note-12-leases-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" name="statement-statement-note-15-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-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" name="statement-statement-note-15-activity-of-business-segments-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-15-activity-of-business-segments-consolidated-net-sales-details" name="statement-statement-note-15-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-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" name="statement-statement-note-15-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:element abstract="true" id="apt_statement-statement-note-15-activity-of-business-segments-tables" name="statement-statement-note-15-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-16-concentration-of-risk-customer-concentration-details" name="statement-statement-note-16-concentration-of-risk-customer-concentration-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-16-concentration-of-risk-tables" name="statement-statement-note-16-concentration-of-risk-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details" name="statement-statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" name="statement-statement-note-2-summary-of-significant-accounting-policies-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-2-summary-of-significant-accounting-policies-tables" name="statement-statement-note-2-summary-of-significant-accounting-policies-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-4-inventories-inventories-details" name="statement-statement-note-4-inventories-inventories-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-4-inventories-tables" name="statement-statement-note-4-inventories-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-5-property-and-equipment-property-and-equipment-details" name="statement-statement-note-5-property-and-equipment-property-and-equipment-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-5-property-and-equipment-tables" name="statement-statement-note-5-property-and-equipment-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" name="statement-statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" name="statement-statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-6-goodwill-and-intangible-assets-tables" name="statement-statement-note-6-goodwill-and-intangible-assets-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-8-accrued-liabilities-accrued-liabilities-details" name="statement-statement-note-8-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-8-accrued-liabilities-tables" name="statement-statement-note-8-accrued-liabilities-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-significant-accounting-policies-policies" name="statement-statement-significant-accounting-policies-policies" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>9
<FILENAME>apt-20211231_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 05:33PM UTC 2022-03-11--><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/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:href="apt-20211231.xsd#statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows" xlink:href="apt-20211231.xsd#statement-consolidated-statements-of-cash-flows" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_OperatingLeaseExpenseNetOfAccretion" xlink:label="apt_OperatingLeaseExpenseNetOfAccretion" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:label="apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:label="us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" xlink:label="us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_IncreaseDecreaseInOperatingLeaseLiability" 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_IncreaseDecreaseInContractWithCustomerLiability" 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_IncreaseDecreaseInPrepaidExpense" 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_IncreaseDecreaseInInventories" 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_IncreaseDecreaseInDueFromRelatedParties" xlink:type="arc"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" 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_DeferredIncomeTaxExpenseBenefit" 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="apt_OperatingLeaseExpenseNetOfAccretion" 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_IncomeLossFromEquityMethodInvestments" 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_DebtSecuritiesAvailableForSaleGainLoss" xlink:type="arc"/>
    <link:calculationArc order="11" 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="12" 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="13" 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_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" xlink:type="arc"/>
    <link:calculationArc order="1" 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_NetCashProvidedByUsedInOperatingActivities" 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_NetCashProvidedByUsedInFinancingActivities" 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/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:href="apt-20211231.xsd#statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:label="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:label="us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:label="us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherReconcilingItems" xlink:label="us-gaap_IncomeTaxReconciliationOtherReconcilingItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xlink:label="us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxReconciliationOtherReconcilingItems" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:type="arc"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:type="arc"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details" xlink:href="apt-20211231.xsd#statement-note-12-leases-future-minimum-lease-payment-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" 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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-" xlink:href="apt-20211231.xsd#statement-consolidated-balance-sheets-" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableRelatedPartiesCurrent" xlink:label="us-gaap_AccountsReceivableRelatedPartiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:label="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_AccountsReceivableRelatedPartiesCurrent" 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_AccountsReceivableNetCurrent" 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_CashAndCashEquivalentsAtCarryingValue" 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_PrepaidExpenseCurrent" xlink:type="arc"/>
    <link:calculationArc order="4" 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="0" 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="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_FiniteLivedIntangibleAssetsNet" 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_Goodwill" 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_AssetsCurrent" 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_OperatingLeaseLiabilityCurrent" 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_ContractWithCustomerLiabilityCurrent" 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_AccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:calculationArc order="3" 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="0" 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="1" 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="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_AdditionalPaidInCapitalCommonStock" 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_StockholdersEquity" 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_Liabilities" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:href="apt-20211231.xsd#statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossAttributableToParent" xlink:label="us-gaap_IncomeLossAttributableToParent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_DebtSecuritiesAvailableForSaleGainLoss" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="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_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossAttributableToParent" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:href="apt-20211231.xsd#statement-note-2-summary-of-significant-accounting-policies-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/20211231/role/statement-note-2-summary-of-significant-accounting-policies-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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" 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_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details" xlink:href="apt-20211231.xsd#statement-note-4-inventories-inventories-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_InventoryFinishedGoodsNetOfReserves" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details" xlink:href="apt-20211231.xsd#statement-note-5-property-and-equipment-property-and-equipment-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="us-gaap_BuildingsAndImprovementsGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="us-gaap_CapitalizedComputerSoftwareGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesGross" xlink:label="us-gaap_FurnitureAndFixturesGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsGross" xlink:label="us-gaap_LeaseholdImprovementsGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="us-gaap_MachineryAndEquipmentGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_MachineryAndEquipmentGross" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_BuildingsAndImprovementsGross" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_CapitalizedComputerSoftwareGross" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_LeaseholdImprovementsGross" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_FurnitureAndFixturesGross" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details" xlink:href="apt-20211231.xsd#statement-note-8-accrued-liabilities-accrued-liabilities-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedBonusesCurrent" xlink:label="us-gaap_AccruedBonusesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedSalariesCurrent" xlink:label="us-gaap_AccruedSalariesCurrent" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedBonusesCurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedSalariesCurrent" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:href="apt-20211231.xsd#statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>10
<FILENAME>apt-20211231_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 05:33PM UTC 2022-03-11--><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/20211231/role/statement-note-20-subsequent-events" xlink:href="apt-20211231.xsd#statement-note-20-subsequent-events" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-20-subsequent-events" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-18-related-party-transactions" xlink:href="apt-20211231.xsd#statement-note-18-related-party-transactions" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-18-related-party-transactions" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-13-legal" xlink:href="apt-20211231.xsd#statement-note-13-legal" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-13-legal" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes" xlink:href="apt-20211231.xsd#statement-note-11-income-taxes" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-4-inventories" xlink:href="apt-20211231.xsd#statement-note-4-inventories" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-4-inventories" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-1-the-company" xlink:href="apt-20211231.xsd#statement-note-1-the-company" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-1-the-company" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NatureOfOperations" xlink:label="us-gaap_NatureOfOperations" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-document-and-entity-information" xlink:href="apt-20211231.xsd#statement-document-and-entity-information" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
	<link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorName" xlink:label="dei_AuditorName" xlink:type="locator"/>
	<link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorLocation" xlink:label="dei_AuditorLocation" xlink:type="locator"/>
	<link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorFirmId" xlink:label="dei_AuditorFirmId" xlink:type="locator"/>
	<link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="dei_IcfrAuditorAttestationFlag" 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_EntityCentralIndexKey" 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_EntityRegistrantName" 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_AmendmentFlag" 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_CurrentFiscalYearEndDate" 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_DocumentFiscalPeriodFocus" 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_DocumentFiscalYearFocus" 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_DocumentType" 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_DocumentAnnualReport" 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_DocumentPeriodEndDate" 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_DocumentTransitionReport" 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_EntityFileNumber" 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_EntityIncorporationStateCountryCode" 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_EntityTaxIdentificationNumber" 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_EntityAddressAddressLine1" 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_EntityAddressCityOrTown" 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_EntityAddressStateOrProvince" 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_EntityAddressPostalZipCode" 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_CityAreaCode" 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_LocalPhoneNumber" 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_Security12bTitle" 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_TradingSymbol" 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_SecurityExchangeName" 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_EntityWellKnownSeasonedIssuer" 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_EntityVoluntaryFilers" 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_EntityCurrentReportingStatus" 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_EntityInteractiveDataCurrent" 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_EntityFilerCategory" 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_EntitySmallBusiness" 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_EntityEmergingGrowthCompany" 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_EntityShellCompany" xlink:type="arc"/>
    <link:definitionArc order="31" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityPublicFloat" xlink:type="arc"/>
    <link:definitionArc order="32" 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="33" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AuditorName" xlink:type="arc"/>
	<link:definitionArc order="34" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AuditorLocation" xlink:type="arc"/>
	<link:definitionArc order="35" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AuditorFirmId" xlink:type="arc"/>
	<link:definitionArc order="36" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_IcfrAuditorAttestationFlag" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals" xlink:href="apt-20211231.xsd#statement-consolidated-balance-sheets-parentheticals" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_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/20211231/role/statement-note-2-summary-of-significant-accounting-policies" xlink:href="apt-20211231.xsd#statement-note-2-summary-of-significant-accounting-policies" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_RangeAxis" xlink:to="srt_RangeMember" 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_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="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" 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_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_RestrictedStockMember" 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="2" 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_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_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain-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="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/20211231/role/statement-note-3-investments" xlink:href="apt-20211231.xsd#statement-note-3-investments" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-3-investments" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:label="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment" xlink:href="apt-20211231.xsd#statement-note-5-property-and-equipment" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets" xlink:href="apt-20211231.xsd#statement-note-6-goodwill-and-intangible-assets" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate" xlink:href="apt-20211231.xsd#statement-note-7-equity-investments-in-unconsolidated-affiliate" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_AlphaProTechEngineeredProductsMember" xlink:label="apt_AlphaProTechEngineeredProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_HarmonyMember" xlink:label="apt_HarmonyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ManufacturingBuildingProductsMember" xlink:label="apt_ManufacturingBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ManufacturingOfBuildingProductsMember" xlink:label="apt_ManufacturingOfBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_MapleIndustriesAndAssociatesMember" xlink:label="apt_MapleIndustriesAndAssociatesMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_IN" xlink:label="country_IN" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:label="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:label="us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-8-accrued-liabilities" xlink:href="apt-20211231.xsd#statement-note-8-accrued-liabilities" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-9-notes-payable" xlink:href="apt-20211231.xsd#statement-note-9-notes-payable" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_DebtDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity" xlink:href="apt-20211231.xsd#statement-note-10-shareholders-equity" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_The2004PlanMember" xlink:label="apt_The2004PlanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:label="us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_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/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/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_RestrictedStockMember" 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="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_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-" xlink:href="apt-20211231.xsd#statement-note-12-leases-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-14-employee-benefit-plans" xlink:href="apt-20211231.xsd#statement-note-14-employee-benefit-plans" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_ForEmployeesContributing1PercentOfGrossEarningsMember" xlink:label="apt_ForEmployeesContributing1PercentOfGrossEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" xlink:label="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_PresidentMember" xlink:label="srt_PresidentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetirementPlanTypeAxis" xlink:label="us-gaap_RetirementPlanTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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_RetirementPlanTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RetirementPlanTypeDomain" xlink:to="apt_ForEmployeesContributing1PercentOfGrossEarningsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain-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_RetirementPlanTypeDomain" xlink:to="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" 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_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_PresidentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain-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="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_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments" xlink:href="apt-20211231.xsd#statement-note-15-activity-of-business-segments" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_AU" xlink:label="country_AU" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/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_AU" 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="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/20211231/role/statement-note-16-concentration-of-risk-" xlink:href="apt-20211231.xsd#statement-note-16-concentration-of-risk-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" 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_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_AccountsReceivableMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-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_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain-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_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" 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_ConcentrationRiskDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements" xlink:href="apt-20211231.xsd#statement-note-17-employment-agreements" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_EmploymentAgreementsTextBlock" xlink:label="apt_EmploymentAgreementsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OfficerMember" xlink:label="srt_OfficerMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_OfficerMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain-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="apt_EmploymentAgreementsTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-" xlink:href="apt-20211231.xsd#statement-note-19-outofperiod-adjustment-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" xlink:label="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" xlink:label="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:label="apt_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RestatementAxis" xlink:label="srt_RestatementAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RestatementDomain" xlink:label="srt_RestatementDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RestatementDomain" xlink:label="srt_RestatementDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:label="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:label="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:label="us-gaap_AdjustmentsForErrorCorrectionDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:label="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_RestatementAxis" xlink:to="srt_RestatementDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="us-gaap_AdjustmentsForErrorCorrectionDomain" 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_RestatementAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RestatementDomain" xlink:to="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RestatementAxis" xlink:to="srt_RestatementDomain-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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:to="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="us-gaap_AdjustmentsForErrorCorrectionDomain-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_AdjustmentsForErrorCorrectionDomain" xlink:to="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" 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_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies" xlink:href="apt-20211231.xsd#statement-significant-accounting-policies-policies" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock" xlink:label="apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdvertisingCostsPolicyTextBlock" xlink:label="us-gaap_AdvertisingCostsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="us-gaap_ConsolidationPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:label="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:label="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="us-gaap_InventoryPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MarketableSecuritiesPolicy" xlink:label="us-gaap_MarketableSecuritiesPolicy" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract" xlink:label="us-gaap_PolicyTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:label="us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesPolicyTextBlock" xlink:label="us-gaap_ReceivablesPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates" 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_PolicyTextBlockAbstract" 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_PolicyTextBlockAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ConsolidationPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_UseOfEstimates" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_MarketableSecuritiesPolicy" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ReceivablesPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_InventoryPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_IncomeTaxPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_EarningsPerSharePolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="16" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="17" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:type="arc"/>
    <link:definitionArc order="18" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AdvertisingCostsPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="19" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="20" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:type="arc"/>
    <link:definitionArc order="21" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:type="arc"/>
    <link:definitionArc order="22" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables" xlink:href="apt-20211231.xsd#statement-note-2-summary-of-significant-accounting-policies-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock" xlink:label="apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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="apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock" 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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-tables" xlink:href="apt-20211231.xsd#statement-note-4-inventories-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-5-property-and-equipment-tables" xlink:href="apt-20211231.xsd#statement-note-5-property-and-equipment-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_PropertyPlantAndEquipmentTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables" xlink:href="apt-20211231.xsd#statement-note-6-goodwill-and-intangible-assets-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" 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_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables" xlink:href="apt-20211231.xsd#statement-note-8-accrued-liabilities-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-10-shareholders-equity-tables" xlink:href="apt-20211231.xsd#statement-note-10-shareholders-equity-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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: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_ScheduleOfShareBasedCompensationActivityTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables" xlink:href="apt-20211231.xsd#statement-note-11-income-taxes-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" 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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" 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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables" xlink:href="apt-20211231.xsd#statement-note-12-leases-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-15-activity-of-business-segments-tables" xlink:href="apt-20211231.xsd#statement-note-15-activity-of-business-segments-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:label="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="3" 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/20211231/role/statement-note-16-concentration-of-risk-tables" xlink:href="apt-20211231.xsd#statement-note-16-concentration-of-risk-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:label="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" xlink:href="apt-20211231.xsd#statement-note-2-summary-of-significant-accounting-policies-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdvertisingExpense" xlink:label="us-gaap_AdvertisingExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_RangeAxis" xlink:to="srt_RangeMember" 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_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="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" 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_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_RestrictedStockMember" 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="2" 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_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_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain-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="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_FiniteLivedIntangibleAssetUsefulLife" 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_AssetImpairmentCharges" 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_ContractWithCustomerLiabilityCurrent" 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_AdvertisingExpense" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual" xlink:href="apt-20211231.xsd#statement-note-3-investments-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MarketableSecurities" xlink:label="us-gaap_MarketableSecurities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MarketableSecuritiesGainLoss" xlink:label="us-gaap_MarketableSecuritiesGainLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_MarketableSecurities" 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_ProceedsFromSaleAndMaturityOfMarketableSecurities" 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_MarketableSecuritiesGainLoss" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-details-textual" xlink:href="apt-20211231.xsd#statement-note-5-property-and-equipment-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_DepreciationAndAmortization" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-details-textual" xlink:href="apt-20211231.xsd#statement-note-6-goodwill-and-intangible-assets-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="us-gaap_GoodwillImpairmentLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_GoodwillImpairmentLoss" 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_AmortizationOfIntangibleAssets" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual" xlink:href="apt-20211231.xsd#statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_AlphaProTechEngineeredProductsMember" xlink:label="apt_AlphaProTechEngineeredProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" xlink:label="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ExpenseToAcquireInventory" xlink:label="apt_ExpenseToAcquireInventory" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_HarmonyMember" xlink:label="apt_HarmonyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ManufacturingBuildingProductsMember" xlink:label="apt_ManufacturingBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ManufacturingOfBuildingProductsMember" xlink:label="apt_ManufacturingOfBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_MapleIndustriesAndAssociatesMember" xlink:label="apt_MapleIndustriesAndAssociatesMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NumberOfStoresOwned" xlink:label="apt_NumberOfStoresOwned" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NumberOfStoresRented" xlink:label="apt_NumberOfStoresRented" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_IN" xlink:label="country_IN" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:label="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AreaOfRealEstateProperty" xlink:label="us-gaap_AreaOfRealEstateProperty" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentAggregateCost" xlink:label="us-gaap_EquityMethodInvestmentAggregateCost" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:label="us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment" xlink:label="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestments" xlink:label="us-gaap_EquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NumberOfStores" xlink:label="us-gaap_NumberOfStores" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:label="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:label="us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_IncomeLossFromEquityMethodInvestments" 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_ProceedsFromSaleOfProductiveAssets" 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/20211231/role/statement-note-8-accrued-liabilities-details-textual" xlink:href="apt-20211231.xsd#statement-note-8-accrued-liabilities-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_ContractWithCustomerLiability" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual" xlink:href="apt-20211231.xsd#statement-note-9-notes-payable-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherLongTermDebt" xlink:label="us-gaap_OtherLongTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_LineOfCreditFacilityMaximumBorrowingCapacity" 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_LineOfCredit" 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_OtherLongTermDebt" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual" xlink:href="apt-20211231.xsd#statement-note-10-shareholders-equity-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_The2004PlanMember" xlink:label="apt_The2004PlanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:label="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" 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_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/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/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_RestrictedStockMember" 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="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_StockRepurchasedAndRetiredDuringPeriodShares" 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_PaymentsForRepurchaseOfCommonStock" 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_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" 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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" 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_CommonStockCapitalSharesReservedForFutureIssuance" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" 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_AllocatedShareBasedCompensationExpense" 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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:type="arc"/>
    <link:definitionArc order="16" 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="17" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual" xlink:href="apt-20211231.xsd#statement-note-12-leases-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseExpense" xlink:label="us-gaap_OperatingLeaseExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-14-employee-benefit-plans-details-textual" xlink:href="apt-20211231.xsd#statement-note-14-employee-benefit-plans-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_BonusMaximumThreshold" xlink:label="apt_BonusMaximumThreshold" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_BonusPercentage" xlink:label="apt_BonusPercentage" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ForEmployeesContributing1PercentOfGrossEarningsMember" xlink:label="apt_ForEmployeesContributing1PercentOfGrossEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" xlink:label="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_PresidentMember" xlink:label="srt_PresidentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedBonusesCurrent" xlink:label="us-gaap_AccruedBonusesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetirementPlanTypeAxis" xlink:label="us-gaap_RetirementPlanTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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_RetirementPlanTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RetirementPlanTypeDomain" xlink:to="apt_ForEmployeesContributing1PercentOfGrossEarningsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain-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_RetirementPlanTypeDomain" xlink:to="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" 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_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_PresidentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain-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="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_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" 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_DefinedContributionPlanEmployerMatchingContributionPercent" 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_DefinedContributionPlanEmployerDiscretionaryContributionAmount" 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_BonusPercentage" 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="apt_BonusMaximumThreshold" 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_AccruedBonusesCurrent" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual" xlink:href="apt-20211231.xsd#statement-note-15-activity-of-business-segments-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_AU" xlink:label="country_AU" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_AU" 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_NumberOfOperatingSegments" 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_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual" xlink:href="apt-20211231.xsd#statement-note-16-concentration-of-risk-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_ConcentrationRiskThresholdPercentage" xlink:label="apt_ConcentrationRiskThresholdPercentage" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" 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_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_AccountsReceivableMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-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_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain-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_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" 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_DebtSecuritiesAvailableForSaleRealizedLoss" 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_ConcentrationRiskThresholdPercentage" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual" xlink:href="apt-20211231.xsd#statement-note-17-employment-agreements-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_EmploymentAgreementTerm" xlink:label="apt_EmploymentAgreementTerm" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OfficerMember" xlink:label="srt_OfficerMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_OfficerMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain-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="apt_EmploymentAgreementTerm" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual" xlink:href="apt-20211231.xsd#statement-note-19-outofperiod-adjustment-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" xlink:label="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" xlink:label="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RestatementAxis" xlink:label="srt_RestatementAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RestatementDomain" xlink:label="srt_RestatementDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RestatementDomain" xlink:label="srt_RestatementDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:label="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:label="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:label="us-gaap_AdjustmentsForErrorCorrectionDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxExpenseFromStockOptionsExercised" xlink:label="us-gaap_DeferredTaxExpenseFromStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:label="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_RestatementAxis" xlink:to="srt_RestatementDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="us-gaap_AdjustmentsForErrorCorrectionDomain" 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_RestatementAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RestatementDomain" xlink:to="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RestatementAxis" xlink:to="srt_RestatementDomain-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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:to="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="us-gaap_AdjustmentsForErrorCorrectionDomain-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_AdjustmentsForErrorCorrectionDomain" xlink:to="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" 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_DeferredTaxExpenseFromStockOptionsExercised" 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_CurrentStateAndLocalTaxExpenseBenefit" 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_RetainedEarningsAccumulatedDeficit" 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_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_StatementLineItems" xlink:to="us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" 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_DeferredIncomeTaxLiabilities" 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_EarningsPerShareBasic" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details" xlink:href="apt-20211231.xsd#statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="us-gaap_FurnitureAndFixturesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="us-gaap_SoftwareDevelopmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" 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_PropertyPlantAndEquipmentByTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_BuildingMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain-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_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_MachineryAndEquipmentMember" 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_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_FurnitureAndFixturesMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_LeaseholdImprovementsMember" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_SoftwareDevelopmentMember" 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_PropertyPlantAndEquipmentUsefulLife" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:href="apt-20211231.xsd#statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" 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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" 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_FiniteLivedIntangibleAssetsNet" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows" xlink:href="apt-20211231.xsd#statement-consolidated-statements-of-cash-flows" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_OperatingLeaseExpenseNetOfAccretion" xlink:label="apt_OperatingLeaseExpenseNetOfAccretion" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:label="apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxesPaid" xlink:label="us-gaap_IncomeTaxesPaid" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:label="us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" xlink:label="us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" 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_DebtSecuritiesAvailableForSaleGainLoss" 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="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="arc"/>
    <link:definitionArc order="4" 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="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" 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_IncreaseDecreaseInContractWithCustomerLiability" 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_IncreaseDecreaseInOperatingLeaseLiability" xlink:type="arc"/>
    <link:definitionArc order="7" 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_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" xlink:type="arc"/>
    <link:definitionArc order="2" 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: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_SupplementalCashFlowInformationAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_IncomeTaxesPaid" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details" xlink:href="apt-20211231.xsd#statement-note-10-shareholders-equity-information-about-stock-options-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" 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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details" xlink:href="apt-20211231.xsd#statement-note-11-income-taxes-deferred-income-tax-assets-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_DeferredTaxAssetsInventoryCurrent" xlink:label="apt_DeferredTaxAssetsInventoryCurrent" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits" xlink:label="apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent" xlink:label="apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent" xlink:label="apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_TemporaryDifferencesAbstract" xlink:label="apt_TemporaryDifferencesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains" xlink:label="us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims" xlink:label="us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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="apt_TemporaryDifferencesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="apt_TemporaryDifferencesAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="apt_TemporaryDifferencesAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="apt_TemporaryDifferencesAbstract" xlink:to="apt_DeferredTaxAssetsInventoryCurrent" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="apt_TemporaryDifferencesAbstract" xlink:to="apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="apt_TemporaryDifferencesAbstract" xlink:to="us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="apt_TemporaryDifferencesAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="apt_TemporaryDifferencesAbstract" xlink:to="apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="apt_TemporaryDifferencesAbstract" xlink:to="apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="apt_TemporaryDifferencesAbstract" xlink:to="us-gaap_DeferredTaxLiabilities" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" xlink:href="apt-20211231.xsd#statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_PatentsAndTrademarksMember" xlink:label="apt_PatentsAndTrademarksMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" 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_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="apt_PatentsAndTrademarksMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain-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_FiniteLivedIntangibleAssetUsefulLife" 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_FiniteLivedIntangibleAssetsGross" 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_FiniteLivedIntangibleAssetsAccumulatedAmortization" 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_FiniteLivedIntangibleAssetsNet" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:href="apt-20211231.xsd#statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:label="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:label="us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:label="us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherReconcilingItems" xlink:label="us-gaap_IncomeTaxReconciliationOtherReconcilingItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xlink:label="us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" 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_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" 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_IncomeTaxReconciliationTaxCreditsForeign" 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_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" 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_IncomeTaxReconciliationStateAndLocalIncomeTaxes" 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_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" 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_IncomeTaxReconciliationOtherReconcilingItems" 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_IncomeTaxExpenseBenefit" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details" xlink:href="apt-20211231.xsd#statement-note-12-leases-future-minimum-lease-payment-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" 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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" 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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" 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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-" xlink:href="apt-20211231.xsd#statement-consolidated-balance-sheets-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableRelatedPartiesCurrent" xlink:label="us-gaap_AccountsReceivableRelatedPartiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:label="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/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_AccountsReceivableRelatedPartiesCurrent" 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_InventoryNet" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PrepaidExpenseCurrent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrent" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_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_ContractWithCustomerLiabilityCurrent" 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_OperatingLeaseLiabilityCurrent" 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_LiabilitiesCurrent" 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_OperatingLeaseLiabilityNoncurrent" 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_DeferredIncomeTaxLiabilitiesNet" 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_Liabilities" xlink:type="arc"/>
    <link:definitionArc order="8" 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_AdditionalPaidInCapitalCommonStock" 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_RetainedEarningsAccumulatedDeficit" 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/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:href="apt-20211231.xsd#statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_InternationalMember" xlink:label="apt_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ReportableGeographicalComponentsMember" xlink:label="srt_ReportableGeographicalComponentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeographicAreasLongLivedAssetsAbstract" xlink:label="us-gaap_GeographicAreasLongLivedAssetsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract" xlink:label="us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncurrentAssets" xlink:label="us-gaap_NoncurrentAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_GeographicAreasRevenuesFromExternalCustomersAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract" xlink:to="us-gaap_Revenues" 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_GeographicAreasLongLivedAssetsAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_GeographicAreasLongLivedAssetsAbstract" xlink:to="us-gaap_NoncurrentAssets" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:href="apt-20211231.xsd#statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossAttributableToParent" xlink:label="us-gaap_IncomeLossAttributableToParent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_DebtSecuritiesAvailableForSaleGainLoss" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpense" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeLossAttributableToParent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:href="apt-20211231.xsd#statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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="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_StockRepurchasedAndRetiredDuringPeriodShares" 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_StockRepurchasedAndRetiredDuringPeriodValue" 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_StockIssuedDuringPeriodValueStockOptionsExercised" 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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" 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_NetIncomeLoss" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:href="apt-20211231.xsd#statement-note-2-summary-of-significant-accounting-policies-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/20211231/role/statement-note-2-summary-of-significant-accounting-policies-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/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-4-inventories-inventories-details" xlink:href="apt-20211231.xsd#statement-note-4-inventories-inventories-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details" xlink:href="apt-20211231.xsd#statement-note-5-property-and-equipment-property-and-equipment-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="us-gaap_BuildingsAndImprovementsGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="us-gaap_CapitalizedComputerSoftwareGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesGross" xlink:label="us-gaap_FurnitureAndFixturesGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsGross" xlink:label="us-gaap_LeaseholdImprovementsGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="us-gaap_MachineryAndEquipmentGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_BuildingsAndImprovementsGross" 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_MachineryAndEquipmentGross" 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_FurnitureAndFixturesGross" 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_LeaseholdImprovementsGross" 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_CapitalizedComputerSoftwareGross" 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_PropertyPlantAndEquipmentGross" 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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" 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_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details" xlink:href="apt-20211231.xsd#statement-note-8-accrued-liabilities-accrued-liabilities-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedBonusesCurrent" xlink:label="us-gaap_AccruedBonusesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedSalariesCurrent" xlink:label="us-gaap_AccruedSalariesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:href="apt-20211231.xsd#statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_CurrentIncomeTaxExpenseBenefit" 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_DeferredIncomeTaxExpenseBenefit" 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_IncomeTaxExpenseBenefit" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details" xlink:href="apt-20211231.xsd#statement-note-15-activity-of-business-segments-consolidated-net-sales-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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="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/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/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/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:href="apt-20211231.xsd#statement-note-15-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/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:href="apt-20211231.xsd#statement-note-15-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/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_TotalConsolidatedAssets" xlink:label="apt_TotalConsolidatedAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details" xlink:href="apt-20211231.xsd#statement-note-16-concentration-of-risk-customer-concentration-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_CustomerAMember" xlink:label="apt_CustomerAMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_CustomerBMember" xlink:label="apt_CustomerBMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_CustomerCMember" xlink:label="apt_CustomerCMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" 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_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain-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_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_AccountsReceivableMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-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="srt_MajorCustomersAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="apt_CustomerAMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="apt_CustomerBMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="apt_CustomerCMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" 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_ConcentrationRiskPercentage1" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details" xlink:href="apt-20211231.xsd#statement-note-10-shareholders-equity-stock-option-activity-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_EmployeesAndDirectorsMember" xlink:label="apt_EmployeesAndDirectorsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/dimension-domain" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" 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_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="apt_EmployeesAndDirectorsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain-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_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:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>11
<FILENAME>apt-20211231_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 05:33PM UTC 2022-03-11--><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-20211231.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/2021/elts/us-gaap-2021-01-31.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-20211231.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="apt-20211231.xsd#apt_statement-statement-significant-accounting-policies-policies" xlink:label="apt_statement-statement-significant-accounting-policies-policies" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-significant-accounting-policies-policies-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Significant Accounting Policies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-significant-accounting-policies-policies" xlink:to="apt_statement-statement-significant-accounting-policies-policies-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-2-summary-of-significant-accounting-policies-tables" xlink:label="apt_statement-statement-note-2-summary-of-significant-accounting-policies-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-2-summary-of-significant-accounting-policies-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 2 - Summary of Significant Accounting Policies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-2-summary-of-significant-accounting-policies-tables" xlink:to="apt_statement-statement-note-2-summary-of-significant-accounting-policies-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income taxes based on U.S. statutory rate of 21% and 34%, respectively</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:to="us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-4-inventories-tables" xlink:label="apt_statement-statement-note-4-inventories-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-4-inventories-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 4 - Inventories</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-4-inventories-tables" xlink:to="apt_statement-statement-note-4-inventories-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-5-property-and-equipment-tables" xlink:label="apt_statement-statement-note-5-property-and-equipment-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-5-property-and-equipment-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 5 - Property and Equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-5-property-and-equipment-tables" xlink:to="apt_statement-statement-note-5-property-and-equipment-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-6-goodwill-and-intangible-assets-tables" xlink:label="apt_statement-statement-note-6-goodwill-and-intangible-assets-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-6-goodwill-and-intangible-assets-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 6 - Goodwill and Intangible Assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-6-goodwill-and-intangible-assets-tables" xlink:to="apt_statement-statement-note-6-goodwill-and-intangible-assets-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-8-accrued-liabilities-tables" xlink:label="apt_statement-statement-note-8-accrued-liabilities-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-8-accrued-liabilities-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 8 - Accrued Liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-8-accrued-liabilities-tables" xlink:to="apt_statement-statement-note-8-accrued-liabilities-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-10-shareholders-equity-tables" xlink:label="apt_statement-statement-note-10-shareholders-equity-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-10-shareholders-equity-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 10 - Shareholders' Equity</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-10-shareholders-equity-tables" xlink:to="apt_statement-statement-note-10-shareholders-equity-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-11-income-taxes-tables" xlink:label="apt_statement-statement-note-11-income-taxes-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-11-income-taxes-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 11 - Income Taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-11-income-taxes-tables" xlink:to="apt_statement-statement-note-11-income-taxes-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-12-leases-tables" xlink:label="apt_statement-statement-note-12-leases-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-12-leases-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 12 - Leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-12-leases-tables" xlink:to="apt_statement-statement-note-12-leases-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-20211231.xsd#apt_statement-statement-note-15-activity-of-business-segments-tables" xlink:label="apt_statement-statement-note-15-activity-of-business-segments-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-15-activity-of-business-segments-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 15 - Activity of Business Segments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-15-activity-of-business-segments-tables" xlink:to="apt_statement-statement-note-15-activity-of-business-segments-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-16-concentration-of-risk-tables" xlink:label="apt_statement-statement-note-16-concentration-of-risk-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-16-concentration-of-risk-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 16 - Concentration of Risk</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-16-concentration-of-risk-tables" xlink:to="apt_statement-statement-note-16-concentration-of-risk-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details" xlink:label="apt_statement-statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 2 - Summary of Significant Accounting Policies - Property and Equipment (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details" xlink:to="apt_statement-statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:label="apt_statement-statement-note-2-summary-of-significant-accounting-policies-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-2-summary-of-significant-accounting-policies-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 2 - Summary of Significant Accounting Policies - 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-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:to="apt_statement-statement-note-2-summary-of-significant-accounting-policies-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="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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="apt-20211231.xsd#apt_statement-statement-note-4-inventories-inventories-details" xlink:label="apt_statement-statement-note-4-inventories-inventories-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-4-inventories-inventories-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 4 - Inventories - Inventories (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-4-inventories-inventories-details" xlink:to="apt_statement-statement-note-4-inventories-inventories-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-5-property-and-equipment-property-and-equipment-details" xlink:label="apt_statement-statement-note-5-property-and-equipment-property-and-equipment-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-5-property-and-equipment-property-and-equipment-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 5 - Property and Equipment - Property and Equipment (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-5-property-and-equipment-property-and-equipment-details" xlink:to="apt_statement-statement-note-5-property-and-equipment-property-and-equipment-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" xlink:label="apt_statement-statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 6 - Goodwill and Intangible Assets - Definite-lived Intangible Assets (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" xlink:to="apt_statement-statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:label="apt_statement-statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 6 - Goodwill and Intangible Assets - Estimated Future Amortization Expense Related to Definite-lived Intangible Assets (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:to="apt_statement-statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-8-accrued-liabilities-accrued-liabilities-details" xlink:label="apt_statement-statement-note-8-accrued-liabilities-accrued-liabilities-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-8-accrued-liabilities-accrued-liabilities-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 8 - 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-8-accrued-liabilities-accrued-liabilities-details" xlink:to="apt_statement-statement-note-8-accrued-liabilities-accrued-liabilities-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-10-shareholders-equity-stock-option-activity-details" xlink:label="apt_statement-statement-note-10-shareholders-equity-stock-option-activity-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-10-shareholders-equity-stock-option-activity-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 10 - Shareholders' Equity - Stock Option Activity (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-10-shareholders-equity-stock-option-activity-details" xlink:to="apt_statement-statement-note-10-shareholders-equity-stock-option-activity-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-10-shareholders-equity-information-about-stock-options-details" xlink:label="apt_statement-statement-note-10-shareholders-equity-information-about-stock-options-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-10-shareholders-equity-information-about-stock-options-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 10 - Shareholders' Equity - Information About Stock Options (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-10-shareholders-equity-information-about-stock-options-details" xlink:to="apt_statement-statement-note-10-shareholders-equity-information-about-stock-options-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:label="apt_statement-statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-11-income-taxes-provision-for-income-taxes-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 11 - Income Taxes - Provision for Income Taxes (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:to="apt_statement-statement-note-11-income-taxes-provision-for-income-taxes-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-11-income-taxes-deferred-income-tax-assets-details" xlink:label="apt_statement-statement-note-11-income-taxes-deferred-income-tax-assets-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-11-income-taxes-deferred-income-tax-assets-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 11 - Income Taxes - Deferred Income Tax Assets (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-11-income-taxes-deferred-income-tax-assets-details" xlink:to="apt_statement-statement-note-11-income-taxes-deferred-income-tax-assets-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:label="apt_statement-statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-11-income-taxes-income-tax-reconciliation-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 11 - Income Taxes - Income Tax Reconciliation (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:to="apt_statement-statement-note-11-income-taxes-income-tax-reconciliation-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-12-leases-future-minimum-lease-payment-details" xlink:label="apt_statement-statement-note-12-leases-future-minimum-lease-payment-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-12-leases-future-minimum-lease-payment-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 12 - 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-12-leases-future-minimum-lease-payment-details" xlink:to="apt_statement-statement-note-12-leases-future-minimum-lease-payment-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-details" xlink:label="apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-15-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 15 - 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-15-activity-of-business-segments-consolidated-net-sales-details" xlink:to="apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:label="apt_statement-statement-note-15-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-15-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 15 - 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-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:to="apt_statement-statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:label="apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-15-activity-of-business-segments-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 15 - Activity of Business Segments - 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-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:to="apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:label="apt_statement-statement-note-15-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-15-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 15 - 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-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:to="apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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="apt-20211231.xsd#apt_statement-statement-note-16-concentration-of-risk-customer-concentration-details" xlink:label="apt_statement-statement-note-16-concentration-of-risk-customer-concentration-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-16-concentration-of-risk-customer-concentration-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 16 - Concentration of Risk - Customer Concentration (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-16-concentration-of-risk-customer-concentration-details" xlink:to="apt_statement-statement-note-16-concentration-of-risk-customer-concentration-details-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Activity [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.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-20211231.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities</link:label>
    <link:label xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from Sale and Maturity of Marketable Securities, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:to="us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.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-20211231.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-20211231.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-20211231.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-20211231.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" xlink:label="us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from sales of marketable securities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" xlink:to="us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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="apt-20211231.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/2021/elts/us-gaap-2021-01-31.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 (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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Options Exercisable, Aggregate Intrinsic Value</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue-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, Exercises in Period, Intrinsic Value</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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 (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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Options Outstanding, Aggregate Intrinsic Value</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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 (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 (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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer advance payments of orders</link:label>
    <link:label xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability, Current</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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 (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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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 to employees and directors (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/2021/elts/us-gaap-2021-01-31.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 (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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccruedLiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued liabilities</link:label>
    <link:label xlink:label="us-gaap_AccruedLiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total accrued liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/us-gaap/2021/elts/us-gaap-2021-01-31.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/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number, Ending Balance (in shares)</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 (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 outstanding (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/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetirementPlanTypeAxis" xlink:label="us-gaap_RetirementPlanTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RetirementPlanTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retirement Plan Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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">us-gaap_AccruedBonusesCurrent</link:label>
    <link:label xlink:label="us-gaap_AccruedBonusesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued Bonuses, Current</link:label>
    <link:label xlink:label="us-gaap_AccruedBonusesCurrent-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Commission 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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RetirementPlanTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retirement Plan Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetirementPlanTypeDomain" xlink:to="us-gaap_RetirementPlanTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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 (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/us-gaap/2021/elts/us-gaap-2021-01-31.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 tax 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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtSecuritiesAvailableForSaleGainLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Loss on marketable securities</link:label>
    <link:label xlink:label="us-gaap_DebtSecuritiesAvailableForSaleGainLoss-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Loss on marketable securities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:to="us-gaap_DebtSecuritiesAvailableForSaleGainLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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 (in shares)</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="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss</link:label>
    <link:label xlink:label="us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-sale, Realized Loss</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss" xlink:to="us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.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-20211231.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="apt-20211231.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/2021/elts/us-gaap-2021-01-31.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/negatedLabel" xlink:type="resource" xml:lang="en-US">Purchase 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/2021/elts/us-gaap-2021-01-31.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-20211231.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="apt-20211231.xsd#apt_EmploymentAgreementTerm" xlink:label="apt_EmploymentAgreementTerm" xlink:type="locator"/>
    <link:label xlink:label="apt_EmploymentAgreementTerm-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">apt_EmploymentAgreementTerm</link:label>
    <link:label xlink:label="apt_EmploymentAgreementTerm-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employment Agreement Term (Year)</link:label>
    <link:label xlink:label="apt_EmploymentAgreementTerm-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Period of the employment agreement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_EmploymentAgreementTerm" xlink:to="apt_EmploymentAgreementTerm-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod</link:label>
    <link:label xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod-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, Expiration Period (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1-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, Award Vesting Period (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SupplementalCashFlowInformationAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Supplemental disclosure of cash flow information:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:label="us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Shareholders' Equity and Share-based Payments [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:to="us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:label="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Error Correction, Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:label="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdjustmentsForErrorCorrectionDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Error Correction, Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:to="us-gaap_AdjustmentsForErrorCorrectionDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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">Consolidated net income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Accumulated Amortization</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net Carrying Amount</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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FiniteLivedIntangibleAssetsGross</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross Carrying Amount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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="apt-20211231.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="us-gaap_CapitalizedComputerSoftwareGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CapitalizedComputerSoftwareGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Software</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CapitalizedComputerSoftwareGross" xlink:to="us-gaap_CapitalizedComputerSoftwareGross-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.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/us-gaap/2021/elts/us-gaap-2021-01-31.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="apt-20211231.xsd#apt_TemporaryDifferencesAbstract" xlink:label="apt_TemporaryDifferencesAbstract" xlink:type="locator"/>
    <link:label xlink:label="apt_TemporaryDifferencesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Temporary differences:</link:label>
    <link:label xlink:label="apt_TemporaryDifferencesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Temporary differences: [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_TemporaryDifferencesAbstract" xlink:to="apt_TemporaryDifferencesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</link:label>
    <link:label xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Less accumulated depreciation and amortization</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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:label xlink:label="us-gaap_PropertyPlantAndEquipmentNet-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total net property and equipment</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/2021/elts/us-gaap-2021-01-31.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="apt-20211231.xsd#apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent" xlink:label="apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent" xlink:type="locator"/>
    <link:label xlink:label="apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent</link:label>
    <link:label xlink:label="apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">State income taxes</link:label>
    <link:label xlink:label="apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Gross amount of noncurrent deferred tax liabilities, which result from applying the applicable tax rate to taxable temporary differences pertaining to each jurisdiction to which the entity is obligated to pay income tax.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent" xlink:to="apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PropertyPlantAndEquipmentGross</link:label>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentGross-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Gross, Ending Balance</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentGross-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="us-gaap_MachineryAndEquipmentGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_MachineryAndEquipmentGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Machinery and equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MachineryAndEquipmentGross" xlink:to="us-gaap_MachineryAndEquipmentGross-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesGross" xlink:label="us-gaap_FurnitureAndFixturesGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FurnitureAndFixturesGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Office furniture and equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FurnitureAndFixturesGross" xlink:to="us-gaap_FurnitureAndFixturesGross-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsGross" xlink:label="us-gaap_LeaseholdImprovementsGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LeaseholdImprovementsGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Leasehold improvements</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseholdImprovementsGross" xlink:to="us-gaap_LeaseholdImprovementsGross-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="us-gaap_BuildingsAndImprovementsGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BuildingsAndImprovementsGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Buildings</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BuildingsAndImprovementsGross" xlink:to="us-gaap_BuildingsAndImprovementsGross-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_EmployeesAndDirectorsMember" xlink:label="apt_EmployeesAndDirectorsMember" xlink:type="locator"/>
    <link:label xlink:label="apt_EmployeesAndDirectorsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employees and Directors [Member]</link:label>
    <link:label xlink:label="apt_EmployeesAndDirectorsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">To whom the options outstanding are granted to.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_EmployeesAndDirectorsMember" xlink:to="apt_EmployeesAndDirectorsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits" xlink:label="apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits" xlink:type="locator"/>
    <link:label xlink:label="apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">AMT/Foreign tax credits</link:label>
    <link:label xlink:label="apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount before allocation of valuation allowances of deferred tax asset attributable to deductible alternative minimum tax and foreign tax credit carryforwards.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits" xlink:to="apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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.sec.gov/country/2021/country-2021.xsd#country_AU" xlink:label="country_AU" xlink:type="locator"/>
    <link:label xlink:label="country_AU-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">AUSTRALIA</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_AU" xlink:to="country_AU-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MarketableSecurities" xlink:label="us-gaap_MarketableSecurities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_MarketableSecurities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_MarketableSecurities</link:label>
    <link:label xlink:label="us-gaap_MarketableSecurities-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Marketable Securities, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MarketableSecurities" xlink:to="us-gaap_MarketableSecurities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MarketableSecuritiesGainLoss" xlink:label="us-gaap_MarketableSecuritiesGainLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_MarketableSecuritiesGainLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_MarketableSecuritiesGainLoss</link:label>
    <link:label xlink:label="us-gaap_MarketableSecuritiesGainLoss-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Marketable Securities, Gain (Loss), Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MarketableSecuritiesGainLoss" xlink:to="us-gaap_MarketableSecuritiesGainLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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, Total</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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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">Income Tax Expense (Benefit), Total</link:label>
    <link:label xlink:label="us-gaap_IncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" 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="apt-20211231.xsd#apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock" xlink:label="apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer, Shipping and Handling, Policy [Policy Text Block]</link:label>
    <link:label xlink:label="apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disclosure of accounting policy for the classification of shipping and handling costs, including whether the costs are included in cost of sales or included in other income statement accounts. If shipping and handling fees are significant and are not included in cost of sales, disclosure includes both the amounts of such costs and the line item on the income statement which includes such costs.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock" xlink:to="apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount</link:label>
    <link:label xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Employer Discretionary Contribution Amount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:to="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent</link:label>
    <link:label xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:to="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent</link:label>
    <link:label xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorName" xlink:label="dei_AuditorName" xlink:type="locator"/>
    <link:label xlink:label="dei_AuditorName-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Auditor Name</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorName" xlink:to="dei_AuditorName-label" xlink:type="arc"/>
	<link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorLocation" xlink:label="dei_AuditorLocation" xlink:type="locator"/>
    <link:label xlink:label="dei_AuditorLocation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Auditor Location</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorLocation" xlink:to="dei_AuditorLocation-label" xlink:type="arc"/>
	<link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorFirmId" xlink:label="dei_AuditorFirmId" xlink:type="locator"/>
    <link:label xlink:label="dei_AuditorFirmId-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Auditor Firm ID</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorFirmId" xlink:to="dei_AuditorFirmId-label" xlink:type="arc"/>
	<link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="dei_IcfrAuditorAttestationFlag" xlink:type="locator"/>
    <link:label xlink:label="dei_IcfrAuditorAttestationFlag-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">ICFR Auditor Attestation Flag</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_IcfrAuditorAttestationFlag" xlink:to="dei_IcfrAuditorAttestationFlag-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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">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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_UseOfEstimates-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Use of Estimates, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UseOfEstimates" xlink:to="us-gaap_UseOfEstimates-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:label="us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PriorPeriodReclassificationAdjustmentDescription-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reclassification, Comparability Adjustment [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:to="us-gaap_PriorPeriodReclassificationAdjustmentDescription-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2021/country-2021.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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInContractWithCustomerLiability</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Customer advance payments of orders</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock, shares outstanding (in shares)</link:label>
    <link:label xlink:label="us-gaap_CommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance (in shares)</link:label>
    <link:label xlink:label="us-gaap_CommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance as of December 31, 2020 (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="apt-20211231.xsd#apt_PatentsAndTrademarksMember" xlink:label="apt_PatentsAndTrademarksMember" xlink:type="locator"/>
    <link:label xlink:label="apt_PatentsAndTrademarksMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Patents and Trademarks [Member]</link:label>
    <link:label xlink:label="apt_PatentsAndTrademarksMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Patents and trademarks</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_PatentsAndTrademarksMember" xlink:to="apt_PatentsAndTrademarksMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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-20211231.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/2021/elts/us-gaap-2021-01-31.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/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="us-gaap_ConsolidationPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConsolidationPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consolidation, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConsolidationPolicyTextBlock" xlink:to="us-gaap_ConsolidationPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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">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/2021/elts/us-gaap-2021-01-31.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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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.sec.gov/dei/2021q4/dei-2021q4.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">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.sec.gov/dei/2021q4/dei-2021q4.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">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.sec.gov/dei/2021q4/dei-2021q4.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">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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AssetImpairmentCharges-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AssetImpairmentCharges</link:label>
    <link:label xlink:label="us-gaap_AssetImpairmentCharges-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Asset Impairment Charges, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetImpairmentCharges" xlink:to="us-gaap_AssetImpairmentCharges-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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">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/2021q4/dei-2021q4.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">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/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021q4/dei-2021q4.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityPublicFloat-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Public Float</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPublicFloat" xlink:to="dei_EntityPublicFloat-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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">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/2021q4/dei-2021q4.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">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.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityVoluntaryFilers-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Voluntary Filers</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityWellKnownSeasonedIssuer-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="us-gaap_GoodwillImpairmentLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GoodwillImpairmentLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_GoodwillImpairmentLoss</link:label>
    <link:label xlink:label="us-gaap_GoodwillImpairmentLoss-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill, Impairment Loss</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillImpairmentLoss" xlink:to="us-gaap_GoodwillImpairmentLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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">Share-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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskPercentage1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskPercentage1" xlink:to="us-gaap_ConcentrationRiskPercentage1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DepreciationAndAmortization-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DepreciationAndAmortization</link:label>
    <link:label xlink:label="us-gaap_DepreciationAndAmortization-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Depreciation, Depletion and Amortization, Nonproduction, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationAndAmortization" xlink:to="us-gaap_DepreciationAndAmortization-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" xlink:label="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" xlink:type="locator"/>
    <link:label xlink:label="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">For Employees Contributing 2 to12 Percent of Gross Earnings [Member]</link:label>
    <link:label xlink:label="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents employees who contribute between 2% to 12% of their gross earnings.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" xlink:to="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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">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="apt-20211231.xsd#apt_ForEmployeesContributing1PercentOfGrossEarningsMember" xlink:label="apt_ForEmployeesContributing1PercentOfGrossEarningsMember" xlink:type="locator"/>
    <link:label xlink:label="apt_ForEmployeesContributing1PercentOfGrossEarningsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">For Employees Contributing 1 Percent of Gross Earnings [Member]</link:label>
    <link:label xlink:label="apt_ForEmployeesContributing1PercentOfGrossEarningsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents employees contributing 1% of gross earnings.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_ForEmployeesContributing1PercentOfGrossEarningsMember" xlink:to="apt_ForEmployeesContributing1PercentOfGrossEarningsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CustomerConcentrationRiskMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer Concentration Risk [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerConcentrationRiskMember" xlink:to="us-gaap_CustomerConcentrationRiskMember-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_CustomerBMember" xlink:label="apt_CustomerBMember" xlink:type="locator"/>
    <link:label xlink:label="apt_CustomerBMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer B [Member]</link:label>
    <link:label xlink:label="apt_CustomerBMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents a major customer.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_CustomerBMember" xlink:to="apt_CustomerBMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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="apt-20211231.xsd#apt_CustomerAMember" xlink:label="apt_CustomerAMember" xlink:type="locator"/>
    <link:label xlink:label="apt_CustomerAMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer A [Member]</link:label>
    <link:label xlink:label="apt_CustomerAMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents major customer.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_CustomerAMember" xlink:to="apt_CustomerAMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AmortizationOfIntangibleAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AmortizationOfIntangibleAssets</link:label>
    <link:label xlink:label="us-gaap_AmortizationOfIntangibleAssets-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortization of Intangible Assets, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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="apt-20211231.xsd#apt_CustomerCMember" xlink:label="apt_CustomerCMember" xlink:type="locator"/>
    <link:label xlink:label="apt_CustomerCMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer C [Member]</link:label>
    <link:label xlink:label="apt_CustomerCMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents a major customer.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_CustomerCMember" xlink:to="apt_CustomerCMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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/2021q4/dei-2021q4.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.sec.gov/dei/2021q4/dei-2021q4.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskByTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskByTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_ConcentrationRiskTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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</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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:label="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments in Debt and Marketable Equity Securities (and Certain Trading Assets) Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:to="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Repurchased and Retired During Period, Shares (in shares)</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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdvertisingExpense" xlink:label="us-gaap_AdvertisingExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdvertisingExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AdvertisingExpense</link:label>
    <link:label xlink:label="us-gaap_AdvertisingExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Advertising Expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdvertisingExpense" xlink:to="us-gaap_AdvertisingExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SalesRevenueNetMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue Benchmark [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesRevenueNetMember" xlink:to="us-gaap_SalesRevenueNetMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountsReceivableMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableMember" xlink:to="us-gaap_AccountsReceivableMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021q4/dei-2021q4.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021q4/dei-2021q4.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">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/2021/elts/us-gaap-2021-01-31.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/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period (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 (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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</link:label>
    <link:label xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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 to employees and directors (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 (in shares)</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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/country-2021.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/2021/elts/us-gaap-2021-01-31.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:label xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Retained Earnings (Accumulated Deficit), Ending Balance</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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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 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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retirement Benefits [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:to="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxExpenseFromStockOptionsExercised" xlink:label="us-gaap_DeferredTaxExpenseFromStockOptionsExercised" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxExpenseFromStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredTaxExpenseFromStockOptionsExercised</link:label>
    <link:label xlink:label="us-gaap_DeferredTaxExpenseFromStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Tax Expense from Stock Options Exercised</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxExpenseFromStockOptionsExercised" xlink:to="us-gaap_DeferredTaxExpenseFromStockOptionsExercised-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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="apt-20211231.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Less imputed interest</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred income taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">2024</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour-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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:label="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FairValueMeasurementPolicyPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Measurement, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:to="us-gaap_FairValueMeasurementPolicyPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2023</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value of Financial Instruments, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:to="us-gaap_FairValueOfFinancialInstrumentsPolicy-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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">2022</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="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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">2023</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-20211231.xsd#apt_BonusPercentage" xlink:label="apt_BonusPercentage" xlink:type="locator"/>
    <link:label xlink:label="apt_BonusPercentage-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">apt_BonusPercentage</link:label>
    <link:label xlink:label="apt_BonusPercentage-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Bonus Percentage</link:label>
    <link:label xlink:label="apt_BonusPercentage-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The bonus paid to the CEO and President in percentage of the Company's pre-tax profits.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_BonusPercentage" xlink:to="apt_BonusPercentage-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:to="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2022</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims" xlink:label="us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Basis difference in investments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims" xlink:to="us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Currency Transactions and Translations Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:to="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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, 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="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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">Share-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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Amortization Period (Year)</link:label>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Asset, Useful Life (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerSharePolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerSharePolicyTextBlock" xlink:to="us-gaap_EarningsPerSharePolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_Revenues-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Consolidated sales</link:label>
    <link:label xlink:label="us-gaap_Revenues-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_Revenues</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_Revenues-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxPolicyTextBlock" xlink:to="us-gaap_IncomeTaxPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ResearchAndDevelopmentExpensePolicy-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Research and Development Expense, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:to="us-gaap_ResearchAndDevelopmentExpensePolicy-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ConcentrationRiskThresholdPercentage" xlink:label="apt_ConcentrationRiskThresholdPercentage" xlink:type="locator"/>
    <link:label xlink:label="apt_ConcentrationRiskThresholdPercentage-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">apt_ConcentrationRiskThresholdPercentage</link:label>
    <link:label xlink:label="apt_ConcentrationRiskThresholdPercentage-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Concentration Risk Threshold Percentage</link:label>
    <link:label xlink:label="apt_ConcentrationRiskThresholdPercentage-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The concentration risk threshold percentage derived from quantitative amount.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_ConcentrationRiskThresholdPercentage" xlink:to="apt_ConcentrationRiskThresholdPercentage-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdvertisingCostsPolicyTextBlock" xlink:label="us-gaap_AdvertisingCostsPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdvertisingCostsPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Advertising Cost [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdvertisingCostsPolicyTextBlock" xlink:to="us-gaap_AdvertisingCostsPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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; 13,115,341 and 13,419,847 shares outstanding as of December 31, 2021 and December 31, 2020, 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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by (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/2021/elts/us-gaap-2021-01-31.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">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/2021/elts/us-gaap-2021-01-31.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">Common stock, par value (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/srt/2021/elts/srt-2021-01-31.xsd#srt_RestatementAxis" xlink:label="srt_RestatementAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_RestatementAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revision of Prior Period [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RestatementAxis" xlink:to="srt_RestatementAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RestatementDomain" xlink:label="srt_RestatementDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_RestatementDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revision of Prior Period [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RestatementDomain" xlink:to="srt_RestatementDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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 (in shares)</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/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:label xlink:label="srt_RangeMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeMember" xlink:to="srt_RangeMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:label xlink:label="srt_MaximumMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maximum [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MaximumMember" xlink:to="srt_MaximumMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:label xlink:label="srt_MinimumMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Minimum [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MinimumMember" xlink:to="srt_MinimumMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommitmentsAndContingenciesPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.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/srt/2021/elts/srt-2021-01-31.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/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_RangeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeAxis" xlink:to="srt_RangeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.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/srt/2021/elts/srt-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxesPaid" xlink:label="us-gaap_IncomeTaxesPaid" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxesPaid-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash paid for income taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesPaid" xlink:to="us-gaap_IncomeTaxesPaid-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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">Consolidated 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/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.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/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:label="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Revenue by Major Customers by Reporting Segments [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:to="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:label="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:to="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredIncomeTaxLiabilities</link:label>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Tax Liabilities, Gross, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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">Total inventory</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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract" xlink:label="us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net sales by geographic region</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract" xlink:to="us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/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="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeographicAreasLongLivedAssetsAbstract" xlink:label="us-gaap_GeographicAreasLongLivedAssetsAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GeographicAreasLongLivedAssetsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-lived assets by geographic region</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeographicAreasLongLivedAssetsAbstract" xlink:to="us-gaap_GeographicAreasLongLivedAssetsAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_MajorCustomersAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_MajorCustomersAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_NameOfMajorCustomerDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="srt_NameOfMajorCustomerDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property and equipment (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:label="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:type="locator"/>
    <link:label xlink:label="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revision of Prior Period, Error Correction, Adjustment [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:to="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:to="us-gaap_RevenueRecognitionPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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">Allowance for doubtful accounts</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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="us-gaap_FurnitureAndFixturesMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FurnitureAndFixturesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Furniture and Fixtures [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FurnitureAndFixturesMember" xlink:to="us-gaap_FurnitureAndFixturesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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 of $64,000 as of December 31, 2021 and $71,000 as of December 31, 2020</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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BuildingMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Building [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BuildingMember" xlink:to="us-gaap_BuildingMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LeaseholdImprovementsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Leasehold Improvements [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseholdImprovementsMember" xlink:to="us-gaap_LeaseholdImprovementsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Lived Tangible Asset [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Lived Tangible Asset [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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 year</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 year</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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="us-gaap_InventoryPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</link:label>
    <link:label xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Increase (decrease) in cash and cash equivalents</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommitmentsAndContingencies-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and contingincies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetCashProvidedByUsedInOperatingActivities</link:label>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by (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/2021/elts/us-gaap-2021-01-31.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 (expense):</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/2021/elts/us-gaap-2021-01-31.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="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredTaxLiabilities</link:label>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilities-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Net deferred income tax liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilities" xlink:to="us-gaap_DeferredTaxLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets</link:label>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Intangible assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:to="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/srt-2021-01-31.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="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ContractWithCustomerLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ContractWithCustomerLiability</link:label>
    <link:label xlink:label="us-gaap_ContractWithCustomerLiability-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MarketableSecuritiesPolicy" xlink:label="us-gaap_MarketableSecuritiesPolicy" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_MarketableSecuritiesPolicy-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Marketable Securities, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MarketableSecuritiesPolicy" xlink:to="us-gaap_MarketableSecuritiesPolicy-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment" xlink:label="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment</link:label>
    <link:label xlink:label="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Method Investment, Other than Temporary Impairment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment" xlink:to="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccruedLiabilitiesCurrentAndNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AccruedLiabilitiesCurrentAndNoncurrent</link:label>
    <link:label xlink:label="us-gaap_AccruedLiabilitiesCurrentAndNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued Liabilities, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrentAndNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains" xlink:label="us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign exchange</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains" xlink:to="us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment</link:label>
    <link:label xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Property and equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OfficerMember" xlink:label="srt_OfficerMember" xlink:type="locator"/>
    <link:label xlink:label="srt_OfficerMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Officer [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_OfficerMember" xlink:to="srt_OfficerMember-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" xlink:label="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" xlink:type="locator"/>
    <link:label xlink:label="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Error Correction for Taxes Corrected in Provision for Income Tax [Member]</link:label>
    <link:label xlink:label="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the values of error corrections that are reconciled against provision for income tax.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" xlink:to="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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="apt-20211231.xsd#apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" xlink:label="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" xlink:type="locator"/>
    <link:label xlink:label="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Error Correction for Taxes Corrected in Retained Earnings [Member]</link:label>
    <link:label xlink:label="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the values of error corrections that are reconciled against retained earnings.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" xlink:to="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_PresidentMember" xlink:label="srt_PresidentMember" xlink:type="locator"/>
    <link:label xlink:label="srt_PresidentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">President [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_PresidentMember" xlink:to="srt_PresidentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payments for Repurchase of Common Stock</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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ProceedsFromStockOptionsExercised</link:label>
    <link:label xlink:label="us-gaap_ProceedsFromStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from Stock Options Exercised</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromStockOptionsExercised" xlink:to="us-gaap_ProceedsFromStockOptionsExercised-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of Individual [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CurrentStateAndLocalTaxExpenseBenefit</link:label>
    <link:label xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current State and Local Tax Expense (Benefit)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_TitleOfIndividualAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of Individual [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:label="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1</link:label>
    <link:label xlink:label="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Remaining Authorized Repurchase Amount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:to="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:label="apt_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:type="locator"/>
    <link:label xlink:label="apt_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Error Corrections and Prior Period Adjustments [Text Block]</link:label>
    <link:label xlink:label="apt_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disclosure of prior period adjustments to previously issued financial statements including (1) the effect of the correction on each financial statement line item and any per-share amounts affected for each prior period presented (2) the cumulative effect of the change on retained earnings or other appropriate components of equity or net assets in the statement of financial position, as of the beginning of the earliest period presented, and (3) the effect of the prior period adjustments (both gross and net of applicable income tax) on the net income of each prior period presented in the entity's annual report for the year in which the adjustments are made.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:to="apt_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherLongTermDebt" xlink:label="us-gaap_OtherLongTermDebt" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherLongTermDebt-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OtherLongTermDebt</link:label>
    <link:label xlink:label="us-gaap_OtherLongTermDebt-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other Long-term Debt, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherLongTermDebt" xlink:to="us-gaap_OtherLongTermDebt-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_EmploymentAgreementsTextBlock" xlink:label="apt_EmploymentAgreementsTextBlock" xlink:type="locator"/>
    <link:label xlink:label="apt_EmploymentAgreementsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employment Agreements [Text Block]</link:label>
    <link:label xlink:label="apt_EmploymentAgreementsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The entire disclosure relating to employment agreements in which the reporting entity is involved.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_EmploymentAgreementsTextBlock" xlink:to="apt_EmploymentAgreementsTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DeferredTaxAssetsInventoryCurrent" xlink:label="apt_DeferredTaxAssetsInventoryCurrent" xlink:type="locator"/>
    <link:label xlink:label="apt_DeferredTaxAssetsInventoryCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory reserve</link:label>
    <link:label xlink:label="apt_DeferredTaxAssetsInventoryCurrent-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory classified as current.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_DeferredTaxAssetsInventoryCurrent" xlink:to="apt_DeferredTaxAssetsInventoryCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_BonusMaximumThreshold" xlink:label="apt_BonusMaximumThreshold" xlink:type="locator"/>
    <link:label xlink:label="apt_BonusMaximumThreshold-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">apt_BonusMaximumThreshold</link:label>
    <link:label xlink:label="apt_BonusMaximumThreshold-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Bonus, Maximum Threshold</link:label>
    <link:label xlink:label="apt_BonusMaximumThreshold-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The maximum threshold for bonus payments under certain bonus plans.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_BonusMaximumThreshold" xlink:to="apt_BonusMaximumThreshold-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LineOfCredit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LineOfCredit</link:label>
    <link:label xlink:label="us-gaap_LineOfCredit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term Line of Credit, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCredit" xlink:to="us-gaap_LineOfCredit-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent" xlink:label="apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:label xlink:label="apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued expenses and inventory</link:label>
    <link:label xlink:label="apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities classified as current.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent" xlink:to="apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.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="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentAnnualReport-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Annual Report</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAnnualReport" xlink:to="dei_DocumentAnnualReport-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_MachineryAndEquipmentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Machinery and Equipment [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MachineryAndEquipmentMember" xlink:to="us-gaap_MachineryAndEquipmentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesPolicyTextBlock" xlink:label="us-gaap_ReceivablesPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ReceivablesPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Receivable [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReceivablesPolicyTextBlock" xlink:to="us-gaap_ReceivablesPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="us-gaap_SoftwareDevelopmentMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SoftwareDevelopmentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Software Development [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SoftwareDevelopmentMember" xlink:to="us-gaap_SoftwareDevelopmentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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.sec.gov/dei/2021q4/dei-2021q4.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">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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Basis of Accounting, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:to="us-gaap_ConcentrationRiskDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.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">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.sec.gov/dei/2021q4/dei-2021q4.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.sec.gov/dei/2021q4/dei-2021q4.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="apt-20211231.xsd#apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock" xlink:label="apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant, and Equipment, Useful Lives [Table Text Block]</link:label>
    <link:label xlink:label="apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure of useful life of long lived, physical assets used in the normal conduct of business and not intended for resale.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock" xlink:to="apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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:label xlink:label="us-gaap_EarningsPerShareDiluted-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Diluted, Total (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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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:label xlink:label="us-gaap_EarningsPerShareBasic-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Basic, Total (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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Deferred Tax Assets and Liabilities [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherReconcilingItems" xlink:label="us-gaap_IncomeTaxReconciliationOtherReconcilingItems" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxReconciliationOtherReconcilingItems-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationOtherReconcilingItems" xlink:to="us-gaap_IncomeTaxReconciliationOtherReconcilingItems-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableRelatedPartiesCurrent" xlink:label="us-gaap_AccountsReceivableRelatedPartiesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountsReceivableRelatedPartiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" 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_AccountsReceivableRelatedPartiesCurrent" xlink:to="us-gaap_AccountsReceivableRelatedPartiesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20211231.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockholdersEquity</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total shareholders' equity</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:label="us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Compensation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:to="us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Options Exercisable, Weighted Average Remaining Contract Life (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:label="us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-deductible meals and entertainment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:to="us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Options Outstanding, Weighted Average Exercise Price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:to="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Options Outstanding, Weighted Average Remaining Contract Life (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions-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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Options Exercisable, Weighted Average Exercise Price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:to="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Range of Exercise Prices, Upper Limit (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xlink:label="us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxReconciliationTaxCreditsForeign-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncomeTaxReconciliationTaxCreditsForeign</link:label>
    <link:label xlink:label="us-gaap_IncomeTaxReconciliationTaxCreditsForeign-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">FDII deduction</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xlink:to="us-gaap_IncomeTaxReconciliationTaxCreditsForeign-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Options Outstanding, Options (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">State taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:to="us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:label="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:to="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Range of Exercise Prices, Lower Limit (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit-label" xlink:type="arc"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>12
<FILENAME>apt-20211231_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 05:33PM UTC 2022-03-11--><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/20211231/role/statement-note-20-subsequent-events" xlink:href="apt-20211231.xsd#statement-note-20-subsequent-events" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-20-subsequent-events" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-18-related-party-transactions" xlink:href="apt-20211231.xsd#statement-note-18-related-party-transactions" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-18-related-party-transactions" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-13-legal" xlink:href="apt-20211231.xsd#statement-note-13-legal" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-13-legal" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes" xlink:href="apt-20211231.xsd#statement-note-11-income-taxes" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-4-inventories" xlink:href="apt-20211231.xsd#statement-note-4-inventories" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-4-inventories" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-1-the-company" xlink:href="apt-20211231.xsd#statement-note-1-the-company" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-1-the-company" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NatureOfOperations" xlink:label="us-gaap_NatureOfOperations" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-document-and-entity-information" xlink:href="apt-20211231.xsd#statement-document-and-entity-information" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
	<link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorName" xlink:label="dei_AuditorName" xlink:type="locator"/>
	<link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorLocation" xlink:label="dei_AuditorLocation" xlink:type="locator"/>
	<link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorFirmId" xlink:label="dei_AuditorFirmId" xlink:type="locator"/>
	<link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="dei_IcfrAuditorAttestationFlag" 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/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="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_DocumentInformationLineItems" xlink:to="dei_EntityRegistrantName" 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="dei_DocumentInformationLineItems" xlink:to="dei_AmendmentFlag" 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="dei_DocumentInformationLineItems" xlink:to="dei_CurrentFiscalYearEndDate" 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="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalPeriodFocus" 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="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalYearFocus" 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_DocumentType" 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_DocumentAnnualReport" 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_DocumentPeriodEndDate" 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_DocumentTransitionReport" 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_EntityFileNumber" 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_EntityIncorporationStateCountryCode" 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_EntityTaxIdentificationNumber" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressAddressLine1" xlink:type="arc"/>
    <link:presentationArc order="14" 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="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_EntityAddressStateOrProvince" 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_EntityAddressPostalZipCode" 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_CityAreaCode" xlink:type="arc"/>
    <link:presentationArc order="18" 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_LocalPhoneNumber" xlink:type="arc"/>
    <link:presentationArc order="19" 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="20" 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="21" 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="22" 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_EntityWellKnownSeasonedIssuer" xlink:type="arc"/>
    <link:presentationArc order="23" 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_EntityVoluntaryFilers" 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_EntityCurrentReportingStatus" 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_EntityInteractiveDataCurrent" 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_EntityFilerCategory" 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_EntitySmallBusiness" 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_EntityEmergingGrowthCompany" 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_EntityShellCompany" xlink:type="arc"/>
    <link:presentationArc order="30" 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_EntityPublicFloat" xlink:type="arc"/>
    <link:presentationArc order="31" 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="32" 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_AuditorName" xlink:type="arc"/>
	<link:presentationArc order="33" 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_AuditorLocation" xlink:type="arc"/>
	<link:presentationArc order="34" 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_AuditorFirmId" xlink:type="arc"/>
	<link:presentationArc order="35" 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_IcfrAuditorAttestationFlag" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals" xlink:href="apt-20211231.xsd#statement-consolidated-balance-sheets-parentheticals" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_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_AllowanceForDoubtfulAccountsReceivableCurrent" 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_CommonStockParOrStatedValuePerShare" 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_CommonStockSharesAuthorized" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies" xlink:href="apt-20211231.xsd#statement-note-2-summary-of-significant-accounting-policies" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="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_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="srt_RangeAxis" 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_RangeAxis" xlink:to="srt_MinimumMember" 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_RangeAxis" xlink:to="srt_MaximumMember" 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_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_RestrictedStockMember" 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_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_IncentivePlan2020Member" 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_SignificantAccountingPoliciesTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-3-investments" xlink:href="apt-20211231.xsd#statement-note-3-investments" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-3-investments" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:label="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment" xlink:href="apt-20211231.xsd#statement-note-5-property-and-equipment" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets" xlink:href="apt-20211231.xsd#statement-note-6-goodwill-and-intangible-assets" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate" xlink:href="apt-20211231.xsd#statement-note-7-equity-investments-in-unconsolidated-affiliate" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_AlphaProTechEngineeredProductsMember" xlink:label="apt_AlphaProTechEngineeredProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_HarmonyMember" xlink:label="apt_HarmonyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ManufacturingBuildingProductsMember" xlink:label="apt_ManufacturingBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ManufacturingOfBuildingProductsMember" xlink:label="apt_ManufacturingOfBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_MapleIndustriesAndAssociatesMember" xlink:label="apt_MapleIndustriesAndAssociatesMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_IN" xlink:label="country_IN" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:label="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:label="us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-8-accrued-liabilities" xlink:href="apt-20211231.xsd#statement-note-8-accrued-liabilities" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-9-notes-payable" xlink:href="apt-20211231.xsd#statement-note-9-notes-payable" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_DebtDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity" xlink:href="apt-20211231.xsd#statement-note-10-shareholders-equity" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_The2004PlanMember" xlink:label="apt_The2004PlanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:label="us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_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="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="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_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_RestrictedStockMember" 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_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-" xlink:href="apt-20211231.xsd#statement-note-12-leases-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-14-employee-benefit-plans" xlink:href="apt-20211231.xsd#statement-note-14-employee-benefit-plans" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_ForEmployeesContributing1PercentOfGrossEarningsMember" xlink:label="apt_ForEmployeesContributing1PercentOfGrossEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" xlink:label="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_PresidentMember" xlink:label="srt_PresidentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetirementPlanTypeAxis" xlink:label="us-gaap_RetirementPlanTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:presentationArc order="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_RetirementPlanTypeAxis" 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_RetirementPlanTypeAxis" xlink:to="apt_ForEmployeesContributing1PercentOfGrossEarningsMember" 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_RetirementPlanTypeAxis" xlink:to="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" 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_TitleOfIndividualAxis" 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_TitleOfIndividualAxis" xlink:to="srt_PresidentMember" 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_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments" xlink:href="apt-20211231.xsd#statement-note-15-activity-of-business-segments" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_AU" xlink:label="country_AU" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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="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_AU" 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_SegmentReportingDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-" xlink:href="apt-20211231.xsd#statement-note-16-concentration-of-risk-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="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_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:presentationArc order="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_ConcentrationRiskByBenchmarkAxis" 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_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_AccountsReceivableMember" 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_ConcentrationRiskByTypeAxis" 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_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_CustomerConcentrationRiskMember" 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_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_SalesRevenueNetMember" 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_ConcentrationRiskDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements" xlink:href="apt-20211231.xsd#statement-note-17-employment-agreements" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_EmploymentAgreementsTextBlock" xlink:label="apt_EmploymentAgreementsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OfficerMember" xlink:label="srt_OfficerMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:presentationArc order="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_TitleOfIndividualAxis" 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_TitleOfIndividualAxis" xlink:to="srt_OfficerMember" 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="apt_EmploymentAgreementsTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-" xlink:href="apt-20211231.xsd#statement-note-19-outofperiod-adjustment-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" xlink:label="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" xlink:label="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:label="apt_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RestatementAxis" xlink:label="srt_RestatementAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RestatementDomain" xlink:label="srt_RestatementDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:label="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:label="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:label="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_RestatementAxis" xlink:to="srt_RestatementDomain" xlink:type="arc"/>
    <link:presentationArc order="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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:type="arc"/>
    <link:presentationArc order="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_RestatementAxis" 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_RestatementAxis" xlink:to="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" 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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" 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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" 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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" 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_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies" xlink:href="apt-20211231.xsd#statement-significant-accounting-policies-policies" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock" xlink:label="apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-significant-accounting-policies-policies" xlink:label="apt_statement-statement-significant-accounting-policies-policies" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdvertisingCostsPolicyTextBlock" xlink:label="us-gaap_AdvertisingCostsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="us-gaap_ConsolidationPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:label="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:label="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="us-gaap_InventoryPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MarketableSecuritiesPolicy" xlink:label="us-gaap_MarketableSecuritiesPolicy" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract" xlink:label="us-gaap_PolicyTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract" xlink:label="us-gaap_PolicyTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:label="us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesPolicyTextBlock" xlink:label="us-gaap_ReceivablesPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates" 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-significant-accounting-policies-policies" 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_PolicyTextBlockAbstract-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_PolicyTextBlockAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract" xlink:type="arc"/>
    <link:presentationArc order="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_AccountingPoliciesAbstract" xlink:to="us-gaap_ConsolidationPolicyTextBlock" 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_AccountingPoliciesAbstract" xlink:to="us-gaap_UseOfEstimates" 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_AccountingPoliciesAbstract" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" 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_AccountingPoliciesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock" 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_AccountingPoliciesAbstract" xlink:to="us-gaap_MarketableSecuritiesPolicy" 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_AccountingPoliciesAbstract" xlink:to="us-gaap_ReceivablesPolicyTextBlock" 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_AccountingPoliciesAbstract" xlink:to="us-gaap_InventoryPolicyTextBlock" 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_AccountingPoliciesAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" 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_AccountingPoliciesAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" 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_AccountingPoliciesAbstract" xlink:to="us-gaap_FairValueOfFinancialInstrumentsPolicy" 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_AccountingPoliciesAbstract" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" 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_AccountingPoliciesAbstract" xlink:to="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_IncomeTaxPolicyTextBlock" 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="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_EarningsPerSharePolicyTextBlock" 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="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" 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="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:type="arc"/>
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AdvertisingCostsPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="19" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="20" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:type="arc"/>
    <link:presentationArc order="21" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:type="arc"/>
    <link:presentationArc order="22" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables" xlink:href="apt-20211231.xsd#statement-note-2-summary-of-significant-accounting-policies-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock" xlink:label="apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-2-summary-of-significant-accounting-policies-tables" xlink:label="apt_statement-statement-note-2-summary-of-significant-accounting-policies-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-2-summary-of-significant-accounting-policies-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="apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock" 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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-tables" xlink:href="apt-20211231.xsd#statement-note-4-inventories-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-4-inventories-tables" xlink:label="apt_statement-statement-note-4-inventories-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-4-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/20211231/role/statement-note-5-property-and-equipment-tables" xlink:href="apt-20211231.xsd#statement-note-5-property-and-equipment-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-5-property-and-equipment-tables" xlink:label="apt_statement-statement-note-5-property-and-equipment-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-property-and-equipment-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_PropertyPlantAndEquipmentTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables" xlink:href="apt-20211231.xsd#statement-note-6-goodwill-and-intangible-assets-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-6-goodwill-and-intangible-assets-tables" xlink:label="apt_statement-statement-note-6-goodwill-and-intangible-assets-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-6-goodwill-and-intangible-assets-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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" 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_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables" xlink:href="apt-20211231.xsd#statement-note-8-accrued-liabilities-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-8-accrued-liabilities-tables" xlink:label="apt_statement-statement-note-8-accrued-liabilities-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-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/20211231/role/statement-note-10-shareholders-equity-tables" xlink:href="apt-20211231.xsd#statement-note-10-shareholders-equity-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-10-shareholders-equity-tables" xlink:label="apt_statement-statement-note-10-shareholders-equity-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-shareholders-equity-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: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_ScheduleOfShareBasedCompensationActivityTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables" xlink:href="apt-20211231.xsd#statement-note-11-income-taxes-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-11-income-taxes-tables" xlink:label="apt_statement-statement-note-11-income-taxes-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-income-taxes-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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" 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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" 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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables" xlink:href="apt-20211231.xsd#statement-note-12-leases-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-12-leases-tables" xlink:label="apt_statement-statement-note-12-leases-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-12-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/20211231/role/statement-note-15-activity-of-business-segments-tables" xlink:href="apt-20211231.xsd#statement-note-15-activity-of-business-segments-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-15-activity-of-business-segments-tables" xlink:label="apt_statement-statement-note-15-activity-of-business-segments-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:label="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-15-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_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" 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_TableTextBlock" xlink:to="us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-tables" xlink:href="apt-20211231.xsd#statement-note-16-concentration-of-risk-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-16-concentration-of-risk-tables" xlink:label="apt_statement-statement-note-16-concentration-of-risk-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:label="us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-16-concentration-of-risk-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_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" xlink:href="apt-20211231.xsd#statement-note-2-summary-of-significant-accounting-policies-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdvertisingExpense" xlink:label="us-gaap_AdvertisingExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="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_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="srt_RangeAxis" 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_RangeAxis" xlink:to="srt_MinimumMember" 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_RangeAxis" xlink:to="srt_MaximumMember" 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_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_RestrictedStockMember" 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_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_IncentivePlan2020Member" 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_FiniteLivedIntangibleAssetUsefulLife-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_AssetImpairmentCharges-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_ContractWithCustomerLiabilityCurrent-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_AdvertisingExpense-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual" xlink:href="apt-20211231.xsd#statement-note-3-investments-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MarketableSecurities" xlink:label="us-gaap_MarketableSecurities-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MarketableSecuritiesGainLoss" xlink:label="us-gaap_MarketableSecuritiesGainLoss-n2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_MarketableSecurities-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_ProceedsFromSaleAndMaturityOfMarketableSecurities-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_MarketableSecuritiesGainLoss-n2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-details-textual" xlink:href="apt-20211231.xsd#statement-note-5-property-and-equipment-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_DepreciationAndAmortization-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-details-textual" xlink:href="apt-20211231.xsd#statement-note-6-goodwill-and-intangible-assets-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="us-gaap_GoodwillImpairmentLoss-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_GoodwillImpairmentLoss-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_AmortizationOfIntangibleAssets-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual" xlink:href="apt-20211231.xsd#statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_AlphaProTechEngineeredProductsMember" xlink:label="apt_AlphaProTechEngineeredProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" xlink:label="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ExpenseToAcquireInventory" xlink:label="apt_ExpenseToAcquireInventory-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_HarmonyMember" xlink:label="apt_HarmonyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ManufacturingBuildingProductsMember" xlink:label="apt_ManufacturingBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ManufacturingOfBuildingProductsMember" xlink:label="apt_ManufacturingOfBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_MapleIndustriesAndAssociatesMember" xlink:label="apt_MapleIndustriesAndAssociatesMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NumberOfStoresOwned" xlink:label="apt_NumberOfStoresOwned-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NumberOfStoresRented" xlink:label="apt_NumberOfStoresRented-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_IN" xlink:label="country_IN" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:label="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AreaOfRealEstateProperty" xlink:label="us-gaap_AreaOfRealEstateProperty-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentAggregateCost" xlink:label="us-gaap_EquityMethodInvestmentAggregateCost-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:label="us-gaap_EquityMethodInvestmentDividendsOrDistributions-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment" xlink:label="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestments" xlink:label="us-gaap_EquityMethodInvestments-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NumberOfStores" xlink:label="us-gaap_NumberOfStores-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:label="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:label="us-gaap_ProceedsFromSaleOfProductiveAssets-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_IncomeLossFromEquityMethodInvestments-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_ProceedsFromSaleOfProductiveAssets-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/20211231/role/statement-note-8-accrued-liabilities-details-textual" xlink:href="apt-20211231.xsd#statement-note-8-accrued-liabilities-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="us-gaap_ContractWithCustomerLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_ContractWithCustomerLiability-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual" xlink:href="apt-20211231.xsd#statement-note-9-notes-payable-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherLongTermDebt" xlink:label="us-gaap_OtherLongTermDebt-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_LineOfCreditFacilityMaximumBorrowingCapacity-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_LineOfCredit-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_OtherLongTermDebt-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual" xlink:href="apt-20211231.xsd#statement-note-10-shareholders-equity-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_The2004PlanMember" xlink:label="apt_The2004PlanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:label="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodShares-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_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_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="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="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_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_RestrictedStockMember" 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_StockRepurchasedAndRetiredDuringPeriodShares-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_PaymentsForRepurchaseOfCommonStock-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_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1-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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod-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_CommonStockCapitalSharesReservedForFutureIssuance-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod-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_AllocatedShareBasedCompensationExpense-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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-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="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate-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="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue-2" xlink:type="arc"/>
    <link:presentationArc order="15" 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_StockIssuedDuringPeriodSharesStockOptionsExercised-2" xlink:type="arc"/>
    <link:presentationArc order="16" 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_ProceedsFromStockOptionsExercised-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual" xlink:href="apt-20211231.xsd#statement-note-12-leases-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseExpense" xlink:label="us-gaap_OperatingLeaseExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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/20211231/role/statement-note-14-employee-benefit-plans-details-textual" xlink:href="apt-20211231.xsd#statement-note-14-employee-benefit-plans-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_BonusMaximumThreshold" xlink:label="apt_BonusMaximumThreshold-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_BonusPercentage" xlink:label="apt_BonusPercentage-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ForEmployeesContributing1PercentOfGrossEarningsMember" xlink:label="apt_ForEmployeesContributing1PercentOfGrossEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" xlink:label="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_PresidentMember" xlink:label="srt_PresidentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedBonusesCurrent" xlink:label="us-gaap_AccruedBonusesCurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount" xlink:label="us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetirementPlanTypeAxis" xlink:label="us-gaap_RetirementPlanTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetirementPlanTypeDomain" xlink:label="us-gaap_RetirementPlanTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_RetirementPlanTypeAxis" xlink:to="us-gaap_RetirementPlanTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:presentationArc order="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_RetirementPlanTypeAxis" 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_RetirementPlanTypeAxis" xlink:to="apt_ForEmployeesContributing1PercentOfGrossEarningsMember" 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_RetirementPlanTypeAxis" xlink:to="apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember" 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_TitleOfIndividualAxis" 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_TitleOfIndividualAxis" xlink:to="srt_PresidentMember" 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_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent-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_DefinedContributionPlanEmployerMatchingContributionPercent-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_DefinedContributionPlanEmployerDiscretionaryContributionAmount-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_BonusPercentage-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="apt_BonusMaximumThreshold-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_AccruedBonusesCurrent-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual" xlink:href="apt-20211231.xsd#statement-note-15-activity-of-business-segments-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_AU" xlink:label="country_AU" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_AU" 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_NumberOfOperatingSegments-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_RevenueFromContractWithCustomerIncludingAssessedTax-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual" xlink:href="apt-20211231.xsd#statement-note-16-concentration-of-risk-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_ConcentrationRiskThresholdPercentage" xlink:label="apt_ConcentrationRiskThresholdPercentage-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="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_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:presentationArc order="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_ConcentrationRiskByBenchmarkAxis" 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_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_AccountsReceivableMember" 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_ConcentrationRiskByTypeAxis" 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_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_CustomerConcentrationRiskMember" 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_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_SalesRevenueNetMember" 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_DebtSecuritiesAvailableForSaleRealizedLoss-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_ConcentrationRiskThresholdPercentage-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual" xlink:href="apt-20211231.xsd#statement-note-17-employment-agreements-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_EmploymentAgreementTerm" xlink:label="apt_EmploymentAgreementTerm-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OfficerMember" xlink:label="srt_OfficerMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:presentationArc order="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_TitleOfIndividualAxis" 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_TitleOfIndividualAxis" xlink:to="srt_OfficerMember" 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="apt_EmploymentAgreementTerm-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual" xlink:href="apt-20211231.xsd#statement-note-19-outofperiod-adjustment-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" xlink:label="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" xlink:label="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RestatementAxis" xlink:label="srt_RestatementAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RestatementDomain" xlink:label="srt_RestatementDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:label="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrentAndNoncurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:label="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxExpenseFromStockOptionsExercised" xlink:label="us-gaap_DeferredTaxExpenseFromStockOptionsExercised-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic-n2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted-n2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:label="us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit-n2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_RestatementAxis" xlink:to="srt_RestatementDomain" xlink:type="arc"/>
    <link:presentationArc order="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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="us-gaap_AdjustmentsForErrorCorrectionDomain" xlink:type="arc"/>
    <link:presentationArc order="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_RestatementAxis" 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_RestatementAxis" xlink:to="srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" 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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" 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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember" 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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis" xlink:to="apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember" 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_DeferredTaxExpenseFromStockOptionsExercised-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_CurrentStateAndLocalTaxExpenseBenefit-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_RetainedEarningsAccumulatedDeficit-n2" 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_IncomeTaxExpenseBenefit-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_AccruedLiabilitiesCurrentAndNoncurrent-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_DeferredIncomeTaxLiabilities-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_EarningsPerShareBasic-n2" 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_EarningsPerShareDiluted-n2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details" xlink:href="apt-20211231.xsd#statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details" xlink:label="apt_statement-statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="us-gaap_FurnitureAndFixturesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="us-gaap_SoftwareDevelopmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-2-summary-of-significant-accounting-policies-property-and-equipment-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_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="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_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="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_PropertyPlantAndEquipmentByTypeAxis" 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_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_BuildingMember" 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_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_MachineryAndEquipmentMember" 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_RangeAxis" 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_RangeAxis" xlink:to="srt_MinimumMember" 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_RangeAxis" xlink:to="srt_MaximumMember" 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_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_FurnitureAndFixturesMember" 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_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_LeaseholdImprovementsMember" 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_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_SoftwareDevelopmentMember" 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_PropertyPlantAndEquipmentUsefulLife" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:href="apt-20211231.xsd#statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:label="apt_statement-statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-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="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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths-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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows" xlink:href="apt-20211231.xsd#statement-consolidated-statements-of-cash-flows" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_OperatingLeaseExpenseNetOfAccretion" xlink:label="apt_OperatingLeaseExpenseNetOfAccretion" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:label="apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-5" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleGainLoss-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments-n9" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxesPaid" xlink:label="us-gaap_IncomeTaxesPaid" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable-n9" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:label="us-gaap_IncreaseDecreaseInDueFromRelatedParties-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories-n9" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" xlink:label="us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" 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/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DebtSecuritiesAvailableForSaleGainLoss-n8" xlink:type="arc"/>
    <link:presentationArc order="3" 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="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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="apt_OperatingLeaseExpenseNetOfAccretion" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" 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_IncreaseDecreaseInContractWithCustomerLiability-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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingLeaseLiability-2" xlink:type="arc"/>
    <link:presentationArc order="7" 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/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-n8" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt" 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_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: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_SupplementalCashFlowInformationAbstract" xlink:type="arc"/>
    <link:presentationArc order="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_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_IncomeTaxesPaid" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details" xlink:href="apt-20211231.xsd#statement-note-10-shareholders-equity-information-about-stock-options-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-10-shareholders-equity-information-about-stock-options-details" xlink:label="apt_statement-statement-note-10-shareholders-equity-information-about-stock-options-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-shareholders-equity-information-about-stock-options-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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details" xlink:href="apt-20211231.xsd#statement-note-11-income-taxes-deferred-income-tax-assets-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_DeferredTaxAssetsInventoryCurrent" xlink:label="apt_DeferredTaxAssetsInventoryCurrent" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits" xlink:label="apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent" xlink:label="apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent" xlink:label="apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent-n8" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_TemporaryDifferencesAbstract" xlink:label="apt_TemporaryDifferencesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-11-income-taxes-deferred-income-tax-assets-details" xlink:label="apt_statement-statement-note-11-income-taxes-deferred-income-tax-assets-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains" xlink:label="us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims" xlink:label="us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-income-taxes-deferred-income-tax-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="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="apt_TemporaryDifferencesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_TemporaryDifferencesAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment-n8" 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="apt_TemporaryDifferencesAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets-n8" 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="apt_TemporaryDifferencesAbstract" xlink:to="apt_DeferredTaxAssetsInventoryCurrent" 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="apt_TemporaryDifferencesAbstract" xlink:to="apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent" 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="apt_TemporaryDifferencesAbstract" xlink:to="us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims" 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="apt_TemporaryDifferencesAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains" 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="apt_TemporaryDifferencesAbstract" xlink:to="apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_TemporaryDifferencesAbstract" xlink:to="apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent-n8" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_TemporaryDifferencesAbstract" xlink:to="us-gaap_DeferredTaxLiabilities-n8" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" xlink:href="apt-20211231.xsd#statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_PatentsAndTrademarksMember" xlink:label="apt_PatentsAndTrademarksMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" xlink:label="apt_statement-statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-n9" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-6-goodwill-and-intangible-assets-definitelived-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="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc"/>
    <link:presentationArc order="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_FiniteLivedIntangibleAssetsByMajorClassAxis" 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_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="apt_PatentsAndTrademarksMember" 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_FiniteLivedIntangibleAssetUsefulLife" 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_FiniteLivedIntangibleAssetsGross-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_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization-n9" 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_FiniteLivedIntangibleAssetsNet-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:href="apt-20211231.xsd#statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:label="apt_statement-statement-note-11-income-taxes-income-tax-reconciliation-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:label="us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:label="us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:label="us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherReconcilingItems" xlink:label="us-gaap_IncomeTaxReconciliationOtherReconcilingItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxCreditsForeign" xlink:label="us-gaap_IncomeTaxReconciliationTaxCreditsForeign-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-income-taxes-income-tax-reconciliation-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_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" 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_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxReconciliationTaxCreditsForeign-n8" 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_IncomeTaxReconciliationForeignIncomeTaxRateDifferential" 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_IncomeTaxReconciliationStateAndLocalIncomeTaxes" 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_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost" 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_IncomeTaxReconciliationOtherReconcilingItems" xlink:type="arc"/>
    <link:presentationArc order="7" 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_IncomeTaxExpenseBenefit-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details" xlink:href="apt-20211231.xsd#statement-note-12-leases-future-minimum-lease-payment-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-12-leases-future-minimum-lease-payment-details" xlink:label="apt_statement-statement-note-12-leases-future-minimum-lease-payment-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-12-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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" 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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" 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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" 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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-3" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-n8" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-" xlink:href="apt-20211231.xsd#statement-consolidated-balance-sheets-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableRelatedPartiesCurrent" xlink:label="us-gaap_AccountsReceivableRelatedPartiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:label="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_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_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_AccountsReceivableRelatedPartiesCurrent" 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_InventoryNet" 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_AssetsCurrentAbstract" xlink:to="us-gaap_PrepaidExpenseCurrent" 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_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrent-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_AssetsCurrentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" 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_Goodwill" 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_FiniteLivedIntangibleAssetsNet" 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_OperatingLeaseRightOfUseAsset" 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_AssetsCurrentAbstract" xlink:to="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:type="arc"/>
    <link:presentationArc order="11" 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_ContractWithCustomerLiabilityCurrent" 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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" 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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent-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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" 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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="arc"/>
    <link:presentationArc order="7" 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="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_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_AdditionalPaidInCapitalCommonStock" 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_RetainedEarningsAccumulatedDeficit" 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/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:href="apt-20211231.xsd#statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_InternationalMember" xlink:label="apt_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:label="apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ReportableGeographicalComponentsMember" xlink:label="srt_ReportableGeographicalComponentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeographicAreasLongLivedAssetsAbstract" xlink:label="us-gaap_GeographicAreasLongLivedAssetsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract" xlink:label="us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncurrentAssets" xlink:label="us-gaap_NoncurrentAssets-1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues-1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-15-activity-of-business-segments-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/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract" 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_GeographicAreasRevenuesFromExternalCustomersAbstract" xlink:to="us-gaap_Revenues-1" 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_GeographicAreasLongLivedAssetsAbstract" 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_GeographicAreasLongLivedAssetsAbstract" xlink:to="us-gaap_NoncurrentAssets-1" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:href="apt-20211231.xsd#statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleGainLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossAttributableToParent" xlink:label="us-gaap_IncomeLossAttributableToParent-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_DebtSecuritiesAvailableForSaleGainLoss" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpense-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeLossAttributableToParent-3" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NetIncomeLoss-3" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:href="apt-20211231.xsd#statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding-5" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodShares-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodValue-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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_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/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="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_StockRepurchasedAndRetiredDuringPeriodValue-n8" 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_StockIssuedDuringPeriodSharesStockOptionsExercised" 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_StockIssuedDuringPeriodValueStockOptionsExercised" 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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" 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_NetIncomeLoss" 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_CommonStockSharesOutstanding-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_StockholdersEquity-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:href="apt-20211231.xsd#statement-note-2-summary-of-significant-accounting-policies-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/20211231/role/statement-note-2-summary-of-significant-accounting-policies-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-20211231.xsd#apt_statement-statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:label="apt_statement-statement-note-2-summary-of-significant-accounting-policies-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/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-2-summary-of-significant-accounting-policies-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/20211231/role/statement-note-4-inventories-inventories-details" xlink:href="apt-20211231.xsd#statement-note-4-inventories-inventories-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-4-inventories-inventories-details" xlink:label="apt_statement-statement-note-4-inventories-inventories-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-4-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/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details" xlink:href="apt-20211231.xsd#statement-note-5-property-and-equipment-property-and-equipment-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-5-property-and-equipment-property-and-equipment-details" xlink:label="apt_statement-statement-note-5-property-and-equipment-property-and-equipment-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingsAndImprovementsGross" xlink:label="us-gaap_BuildingsAndImprovementsGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="us-gaap_CapitalizedComputerSoftwareGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesGross" xlink:label="us-gaap_FurnitureAndFixturesGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsGross" xlink:label="us-gaap_LeaseholdImprovementsGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentGross" xlink:label="us-gaap_MachineryAndEquipmentGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-property-and-equipment-property-and-equipment-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_BuildingsAndImprovementsGross" 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_MachineryAndEquipmentGross" 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_FurnitureAndFixturesGross" 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_LeaseholdImprovementsGross" 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_CapitalizedComputerSoftwareGross" 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_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross-3" 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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment-n8" xlink:type="arc"/>
    <link:presentationArc order="7" 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_PropertyPlantAndEquipmentNet-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details" xlink:href="apt-20211231.xsd#statement-note-8-accrued-liabilities-accrued-liabilities-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-8-accrued-liabilities-accrued-liabilities-details" xlink:label="apt_statement-statement-note-8-accrued-liabilities-accrued-liabilities-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedBonusesCurrent" xlink:label="us-gaap_AccruedBonusesCurrent-8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedSalariesCurrent" xlink:label="us-gaap_AccruedSalariesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-8-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/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_AccruedBonusesCurrent-8" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccruedLiabilitiesCurrent-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:href="apt-20211231.xsd#statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:label="apt_statement-statement-note-11-income-taxes-provision-for-income-taxes-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-income-taxes-provision-for-income-taxes-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_CurrentIncomeTaxExpenseBenefit" 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_DeferredIncomeTaxExpenseBenefit" 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_IncomeTaxExpenseBenefit-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details" xlink:href="apt-20211231.xsd#statement-note-15-activity-of-business-segments-consolidated-net-sales-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-details" xlink:label="apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-15-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="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="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="us-gaap_OperatingSegmentsMember" 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/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:href="apt-20211231.xsd#statement-note-15-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/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:label="apt_statement-statement-note-15-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/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-15-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/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:href="apt-20211231.xsd#statement-note-15-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/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_TotalConsolidatedAssets" xlink:label="apt_TotalConsolidatedAssets" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:label="apt_statement-statement-note-15-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/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-15-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/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details" xlink:href="apt-20211231.xsd#statement-note-16-concentration-of-risk-customer-concentration-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_CustomerAMember" xlink:label="apt_CustomerAMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_CustomerBMember" xlink:label="apt_CustomerBMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_CustomerCMember" xlink:label="apt_CustomerCMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-16-concentration-of-risk-customer-concentration-details" xlink:label="apt_statement-statement-note-16-concentration-of-risk-customer-concentration-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.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-16-concentration-of-risk-customer-concentration-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_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" xlink:type="arc"/>
    <link:presentationArc order="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_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="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_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:presentationArc order="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_ConcentrationRiskByTypeAxis" 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_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_CustomerConcentrationRiskMember" 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_ConcentrationRiskByBenchmarkAxis" 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_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_AccountsReceivableMember" 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_MajorCustomersAxis" 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_MajorCustomersAxis" xlink:to="apt_CustomerAMember" 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_MajorCustomersAxis" xlink:to="apt_CustomerBMember" 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_MajorCustomersAxis" xlink:to="apt_CustomerCMember" 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_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_SalesRevenueNetMember" 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_StatementLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details" xlink:href="apt-20211231.xsd#statement-note-10-shareholders-equity-stock-option-activity-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details" xlink:type="extended">
    <link:loc xlink:href="apt-20211231.xsd#apt_EmployeesAndDirectorsMember" xlink:label="apt_EmployeesAndDirectorsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20211231.xsd#apt_statement-statement-note-10-shareholders-equity-stock-option-activity-details" xlink:label="apt_statement-statement-note-10-shareholders-equity-stock-option-activity-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-5" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-5" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-n8" 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-shareholders-equity-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="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:presentationArc order="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_TitleOfIndividualAxis" 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_TitleOfIndividualAxis" xlink:to="apt_EmployeesAndDirectorsMember" 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/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-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_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:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001685528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document And Entity Information - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Mar. 04, 2022</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">FY<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="top.Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-K<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="top.Show.showAR( this, 'defref_dei_DocumentAnnualReport', window );">Document Annual Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Dec. 31,  2021<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="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, $0.01 par value<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityWellKnownSeasonedIssuer', window );">Entity Well-known Seasoned Issuer</a></td>
<td class="text">No<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="top.Show.showAR( this, 'defref_dei_EntityVoluntaryFilers', window );">Entity Voluntary Filers</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Accelerated Filer<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="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityPublicFloat', window );">Entity Public Float</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 101,367,511<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">13,139,391<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AuditorName', window );">Auditor Name</a></td>
<td class="text">Tanner LLC<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="top.Show.showAR( this, 'defref_dei_AuditorLocation', window );">Auditor Location</a></td>
<td class="text">Lehi, Utah<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AuditorFirmId', window );">Auditor Firm ID</a></td>
<td class="text">270<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="top.Show.showAR( this, 'defref_dei_IcfrAuditorAttestationFlag', window );">ICFR Auditor Attestation Flag</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_AuditorFirmId">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>PCAOB issued Audit Firm Identifier</p></div>
<a href="javascript:void(0);" onclick="top.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-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_AuditorFirmId</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:nonemptySequenceNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<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_AuditorLocation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_AuditorLocation</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:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<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_AuditorName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_AuditorName</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:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_DocumentAnnualReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an annual report.</p></div>
<a href="javascript:void(0);" onclick="top.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-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_DocumentAnnualReport</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_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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_EntityPublicFloat">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_EntityPublicFloat</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: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_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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_EntityVoluntaryFilers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_EntityVoluntaryFilers</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_EntityWellKnownSeasonedIssuer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_EntityWellKnownSeasonedIssuer</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_IcfrAuditorAttestationFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_IcfrAuditorAttestationFlag</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_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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>14
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797004761848">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 16,307,000<span></span>
</td>
<td class="nump">$ 23,292,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="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net of allowance for doubtful accounts of $64,000 as of December 31, 2021 and $71,000 as of December 31, 2020</a></td>
<td class="nump">3,397,000<span></span>
</td>
<td class="nump">8,132,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="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableRelatedPartiesCurrent', window );">Accounts receivable, related party</a></td>
<td class="nump">1,383,000<span></span>
</td>
<td class="nump">905,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="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">24,969,000<span></span>
</td>
<td class="nump">16,749,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="top.Show.showAR( this, 'defref_us-gaap_PrepaidExpenseCurrent', window );">Prepaid expenses</a></td>
<td class="nump">6,943,000<span></span>
</td>
<td class="nump">6,087,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="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">52,999,000<span></span>
</td>
<td class="nump">55,165,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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">6,064,000<span></span>
</td>
<td class="nump">4,353,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="top.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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Definite-lived intangible assets, net</a></td>
<td class="nump">3,000<span></span>
</td>
<td class="nump">7,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="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right-of-use assets</a></td>
<td class="nump">2,648,000<span></span>
</td>
<td class="nump">3,535,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="top.Show.showAR( this, 'defref_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures', window );">Equity investment in unconsolidated affiliate</a></td>
<td class="nump">6,120,000<span></span>
</td>
<td class="nump">5,549,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="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">67,889,000<span></span>
</td>
<td class="nump">68,664,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="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">528,000<span></span>
</td>
<td class="nump">1,983,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="top.Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">1,250,000<span></span>
</td>
<td class="nump">2,793,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="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Customer advance payments of orders</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">209,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="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Lease liabilities</a></td>
<td class="nump">883,000<span></span>
</td>
<td class="nump">867,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="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">2,661,000<span></span>
</td>
<td class="nump">5,852,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="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Lease liabilities, net of current portion</a></td>
<td class="nump">1,817,000<span></span>
</td>
<td class="nump">2,719,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="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Deferred income tax liabilities, net</a></td>
<td class="nump">791,000<span></span>
</td>
<td class="nump">563,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="top.Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">5,269,000<span></span>
</td>
<td class="nump">9,134,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="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingincies</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, $.01 par value: 50,000,000 shares authorized; 13,115,341 and 13,419,847 shares outstanding as of December 31, 2021 and December 31, 2020, respectively</a></td>
<td class="nump">132,000<span></span>
</td>
<td class="nump">135,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="top.Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">409,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="top.Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">62,488,000<span></span>
</td>
<td class="nump">58,986,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="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total shareholders' equity</a></td>
<td class="nump">62,620,000<span></span>
</td>
<td class="nump">59,530,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="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and shareholders' equity</a></td>
<td class="nump">$ 67,889,000<span></span>
</td>
<td class="nump">$ 68,664,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_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_AccountsReceivableRelatedPartiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of receivables arising from transactions with related parties due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.3(a)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39603-107864<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableRelatedPartiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_AdditionalPaidInCapitalCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapitalCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6801-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 15: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.25)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03.(a),19)<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121557415&amp;loc=d3e14326-108349<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130531-203044<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130532-203044<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31917-109318<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120320667&amp;loc=SL49117168-202975<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.12)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 20: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6787-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 340<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6387103&amp;loc=d3e6435-108320<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 340<br> -SubTopic 10<br> -Section 05<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123349782&amp;loc=d3e5879-108316<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cumulative amount of the reporting entity's undistributed earnings or deficit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797004654296">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parentheticals) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Allowance for doubtful accounts</a></td>
<td class="nump">$ 64,000<span></span>
</td>
<td class="nump">$ 71,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="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding (in shares)</a></td>
<td class="nump">13,115,341<span></span>
</td>
<td class="nump">13,419,847<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001729832">
<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">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 68,637,000<span></span>
</td>
<td class="nump">$ 102,700,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="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of goods sold, excluding depreciation and amortization</a></td>
<td class="nump">43,339,000<span></span>
</td>
<td class="nump">52,218,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="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">25,298,000<span></span>
</td>
<td class="nump">50,482,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="top.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="top.Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general and administrative</a></td>
<td class="nump">16,554,000<span></span>
</td>
<td class="nump">18,171,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="top.Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">817,000<span></span>
</td>
<td class="nump">729,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="top.Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="nump">17,371,000<span></span>
</td>
<td class="nump">18,900,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="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations</a></td>
<td class="nump">7,927,000<span></span>
</td>
<td class="nump">31,582,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="top.Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpenseAbstract', window );"><strong>Other income (expense):</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="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromEquityMethodInvestments', window );">Equity in income of unconsolidated affiliate</a></td>
<td class="nump">571,000<span></span>
</td>
<td class="nump">710,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="top.Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleGainLoss', window );">Loss on marketable securities</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(62,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="top.Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNonoperatingNet', window );">Interest income, net</a></td>
<td class="nump">2,000<span></span>
</td>
<td class="nump">18,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="top.Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Total other income</a></td>
<td class="nump">573,000<span></span>
</td>
<td class="nump">666,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="top.Show.showAR( this, 'defref_us-gaap_IncomeLossAttributableToParent', window );">Income before provision for income taxes</a></td>
<td class="nump">8,500,000<span></span>
</td>
<td class="nump">32,248,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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">1,744,000<span></span>
</td>
<td class="nump">5,360,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="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 6,756,000<span></span>
</td>
<td class="nump">$ 26,888,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="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic earnings per common share (in dollars per share)</a></td>
<td class="nump">$ 0.51<span></span>
</td>
<td class="nump">$ 2.00<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted earnings per common share (in dollars per share)</a></td>
<td class="nump">$ 0.50<span></span>
</td>
<td class="nump">$ 1.92<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic weighted average common shares outstanding (in shares)</a></td>
<td class="nump">13,225,628<span></span>
</td>
<td class="nump">13,449,987<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted average common shares outstanding (in shares)</a></td>
<td class="nump">13,499,442<span></span>
</td>
<td class="nump">13,972,145<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_DebtSecuritiesAvailableForSaleGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of unrealized and realized gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleGainLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1448-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e4984-109258<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e3842-109258<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1252-109256<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e3842-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1252-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 18: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(13)(f))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109237563&amp;loc=d3e33749-111570<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net amount of nonoperating interest income (expense).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>17
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001578200">
<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>Total</div></th>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Dec. 31, 2019</a></td>
<td class="nump">12,885,273<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2019</a></td>
<td class="nump">$ 129,000<span></span>
</td>
<td class="nump">$ 708,000<span></span>
</td>
<td class="nump">$ 32,098,000<span></span>
</td>
<td class="nump">$ 32,935,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="top.Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares', window );">Common stock repurchased and retired (in shares)</a></td>
<td class="num">(223,100)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(223,100)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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">(2,664,000)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">$ (2,666,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="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Options exercised (in shares)</a></td>
<td class="nump">757,674<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">757,674<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Options exercised</a></td>
<td class="nump">$ 8,000<span></span>
</td>
<td class="nump">1,990,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,998,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="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation expense</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">375,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">375,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="top.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">26,888,000<span></span>
</td>
<td class="nump">$ 26,888,000<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance as of December 31, 2020 (in shares) at Dec. 31, 2020</a></td>
<td class="nump">13,419,847<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">13,419,847<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2020</a></td>
<td class="nump">$ 135,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">58,986,000<span></span>
</td>
<td class="nump">$ 59,530,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="top.Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares', window );">Common stock repurchased and retired (in shares)</a></td>
<td class="num">(439,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(439,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="top.Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue', window );">Common stock repurchased and retired</a></td>
<td class="num">$ (4,000)<span></span>
</td>
<td class="num">(1,150,000)<span></span>
</td>
<td class="num">(3,254,000)<span></span>
</td>
<td class="num">$ (4,408,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="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Options exercised (in shares)</a></td>
<td class="nump">134,494<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">134,494<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Options exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">426,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 427,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="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation expense</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 315,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">315,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="top.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">6,756,000<span></span>
</td>
<td class="nump">$ 6,756,000<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance as of December 31, 2020 (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="nump">13,115,341<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2021</a></td>
<td class="nump">$ 132,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 62,488,000<span></span>
</td>
<td class="nump">$ 62,620,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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=122142933&amp;loc=d3e11149-113907<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=122142933&amp;loc=d3e11178-113907<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123468992&amp;loc=d3e4534-113899<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>18
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001514600">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Cash Flows - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 6,756,000<span></span>
</td>
<td class="nump">$ 26,888,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="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash provided by (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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based compensation</a></td>
<td class="nump">315,000<span></span>
</td>
<td class="nump">375,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="top.Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">817,000<span></span>
</td>
<td class="nump">729,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="top.Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleGainLoss', window );">Loss on marketable securities</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">62,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromEquityMethodInvestments', window );">Equity in income of unconsolidated affiliate</a></td>
<td class="num">(571,000)<span></span>
</td>
<td class="num">(710,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_apt_OperatingLeaseExpenseNetOfAccretion', window );">Operating lease expense, net of accretion</a></td>
<td class="nump">887,000<span></span>
</td>
<td class="num">(357,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="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income taxes</a></td>
<td class="nump">228,000<span></span>
</td>
<td class="nump">47,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="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in 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="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable, net</a></td>
<td class="nump">4,735,000<span></span>
</td>
<td class="num">(4,564,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="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInDueFromRelatedParties', window );">Accounts receivable, related party</a></td>
<td class="num">(478,000)<span></span>
</td>
<td class="num">(181,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="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(8,220,000)<span></span>
</td>
<td class="num">(5,446,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="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidExpense', window );">Prepaid expenses</a></td>
<td class="num">(856,000)<span></span>
</td>
<td class="num">(2,500,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="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities', window );">Accounts payable and accrued liabilities</a></td>
<td class="num">(2,998,000)<span></span>
</td>
<td class="nump">3,355,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="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInContractWithCustomerLiability', window );">Customer advance payments of orders</a></td>
<td class="num">(209,000)<span></span>
</td>
<td class="nump">209,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="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingLeaseLiability', window );">Lease liabilities</a></td>
<td class="num">(886,000)<span></span>
</td>
<td class="nump">367,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="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by (used in) operating activities</a></td>
<td class="num">(480,000)<span></span>
</td>
<td class="nump">18,274,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="top.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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchase of property and equipment</a></td>
<td class="num">(2,524,000)<span></span>
</td>
<td class="num">(1,135,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="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt', window );">Proceeds from sales of marketable securities</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">273,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="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(2,524,000)<span></span>
</td>
<td class="num">(862,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="top.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="top.Show.showAR( this, 'defref_apt_ProceedsFromPaymentsForStockOptionsExercised', window );">Proceeds from exercise of stock options</a></td>
<td class="nump">427,000<span></span>
</td>
<td class="nump">1,998,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="top.Show.showAR( this, 'defref_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Repurchase of common stock</a></td>
<td class="num">(4,408,000)<span></span>
</td>
<td class="num">(2,666,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="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="num">(3,981,000)<span></span>
</td>
<td class="num">(668,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="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Increase (decrease) in cash and cash equivalents</a></td>
<td class="num">(6,985,000)<span></span>
</td>
<td class="nump">16,744,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="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash and cash equivalents, beginning of the year</a></td>
<td class="nump">23,292,000<span></span>
</td>
<td class="nump">6,548,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="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash and cash equivalents, end of the year</a></td>
<td class="nump">16,307,000<span></span>
</td>
<td class="nump">23,292,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="top.Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowInformationAbstract', window );"><strong>Supplemental disclosure of cash flow information:</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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaid', window );">Cash paid for income taxes</a></td>
<td class="nump">$ 1,824,000<span></span>
</td>
<td class="nump">$ 4,136,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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=SL98516268-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3044-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123444420&amp;loc=d3e33268-110906<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_DebtSecuritiesAvailableForSaleGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of unrealized and realized gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleGainLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(13)(f))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109237563&amp;loc=d3e33749-111570<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_IncomeTaxesPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4297-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3536-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_IncreaseDecreaseInContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 310<br> -Section 45<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123371682&amp;loc=d3e55415-109406<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInDueFromRelatedParties">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in obligation for operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3536-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from sale of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=124260329&amp;loc=d3e26853-111562<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3151-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001156216">
<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">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">1.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><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: &quot;Times New Roman&quot;; 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;US&#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;">The ongoing&#160;novel coronavirus (COVID-<em style="font: inherit;">19</em>) pandemic has adversely affected global economies, financial markets and the overall environment in which we do business. Overall, the increase in sales of our Disposable Protective Apparel segment products resulting from the pandemic has had a positive impact on our year-to-date results, but the positive impact in <em style="font: inherit;">2021</em> is less than in <em style="font: inherit;">2020,</em> as the effects of COVID-<em style="font: inherit;">19</em> are normalizing. The extent of the pandemic&#8217;s effect on our future operational and financial performance will depend in large part on future developments, which cannot be predicted with confidence at this time. Future developments include the duration, scope and severity of the pandemic and new variants, including the Omicron variant, 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 and rapidly evolving situation, we are unable to predict with any certainty the likely impact of the&#160;COVID-<em style="font: inherit;">19</em> pandemic on our future 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_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -URI http://asc.fasb.org/topic&amp;trid=2134479<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>20
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001151992">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Summary of Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">2.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Summary of Significant Accounting Policies</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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Principles of Consolidation</b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">The consolidated financial statements of the Company include the accounts of the Company and its wholly-owned subsidiaries, Alpha Pro Tech, Inc. and Alpha ProTech Engineered Products, Inc. All significant intercompany accounts and transactions have been eliminated in consolidation.</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;">Events that occurred after <em style="font: inherit;"> December 31, 2021 </em>through the date on which these financial statements were filed with the Securities and Exchange Commission (&#8220;SEC&#8221;) were considered in the preparation of these financial statements.</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/>
   <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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Use of Estimates</b></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 preparation of financial statements in conformity with U.S. generally accepted accounting principles (&#8220;U.S. GAAP&#8221;) requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and the disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses for the reporting period. Actual results could differ from these estimates.</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;margin:0pt;"/><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Periods Presented</b></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;">All amounts have been rounded to the nearest thousand with the exception of the per share data. The Company qualified as a smaller reporting company at the measurement date for determining such qualification during <em style="font: inherit;">2021.</em> According to the disclosure requirements for smaller reporting companies, the Company has included balance sheets as of the end of the <em style="font: inherit;">two</em> most recent years and statements of income, comprehensive income, shareholders&#8217; equity and cash flows for each of the <em style="font: inherit;">two</em> most recent years.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/>


   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Cash and Cash Equivalents</b></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 considers all highly liquid investments purchased with an original maturity of <em style="font: inherit;">three</em> months or less to be cash equivalents.</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/>
   <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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Investments</b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#160;</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">Investments are classified as available-for-sale in accordance with U.S. GAAP. The Company does <em style="font: inherit;">not</em> have any investments in securities that are classified as held-to-maturity or trading. Available-for-sale investments are carried at their fair values using quoted prices in active markets for identical securities, with realized and unrealized gains and losses reported in net income. The cost of securities sold is based on the specific identification method. Investments that the Company intends to hold for more than <em style="font: inherit;">one</em> year are classified as long-term investments in the accompanying consolidated balance sheets.&#160;&#160;&#160;&#160;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/>
   <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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Accounts Receivable</b></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;">Accounts receivable are recorded at the invoice amount and do <em style="font: inherit;">not</em> bear interest.&#160; The allowance for doubtful accounts is the Company&#8217;s best estimate of the amount of probable credit losses in the Company&#8217;s existing accounts receivable; however, changes in circumstances relating to accounts receivable <em style="font: inherit;"> may </em>result in a requirement for additional allowances in the future.&#160; The Company determines the allowance based upon historical write-off experience and known conditions about its customers&#8217; current ability to pay.&#160; Account balances are charged against the allowance when management determines that the probability for collection is remote.</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/>
   <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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Inventories</b></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;">Inventories include freight-in, materials, labor and overhead costs and are stated at the lower of cost or net realizable value. Allowances are recorded for slow-moving, obsolete or unusable inventories. The Company assesses inventories for estimated obsolescence or unmarketable products and writes down the difference between the cost of the inventories and the estimated net realizable values based upon assumptions about future sales and supplies on-hand.</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/>
   <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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Property and Equipment</b></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;">Property and equipment are stated at cost less accumulated depreciation and amortization. Costs to develop internal use software are charged to expense as incurred until the preliminary project stage has been completed and application development begins. The Company discontinues capitalization upon entering the post-implementation stage and expenses ongoing maintenance and support costs. Property and equipment are depreciated or amortized using the straight-line method over the shorter of the respective useful lives of the assets or the related lease terms as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

     <table cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 80%; margin-left: 22pt; margin-right: auto;"><tbody><tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="width: 85%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Buildings (in years)</td><td style="width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font: inherit;">&#160;</em></td><td style="width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">25</td><td style="width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font: inherit;">&#160;</em></td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Machinery and equipment (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;">5</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;">15</td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Office furniture and equipment (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;">2</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;">7</td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Leasehold improvements (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;">4</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;">5</td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Software (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;"><em style="font: inherit;">&#160;</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;">5</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;"><em style="font: inherit;">&#160;</em></td></tr>
</tbody></table>
     <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 21pt;">&#160;</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">Expenditures for renewals and betterments are capitalized, whereas costs of maintenance and repairs are charged to operations in the period incurred.</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/>
   <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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Goodwill and Intangible Assets</b></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 accounts for goodwill and definite-lived intangible assets in accordance with Financial Accounting Standards Board (&#8220;FASB&#8221;) Accounting Standards Codification (&#8220;ASC&#8221;) <em style="font: inherit;">350,</em> Intangibles &#8211; Goodwill and Other. Goodwill is <em style="font: inherit;">not</em> amortized, but rather is tested annually for impairment. Intangible assets with finite lives are amortized over their useful lives (see Note <em style="font: inherit;">6</em>). The Company&#8217;s patents and trademarks are recorded at cost and are amortized using the straight-line method over their estimated useful lives of 5-17 years.</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/>
   <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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Fair Value of Financial Instruments</b></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 estimated fair values of financial instruments are determined based on relevant market information and cannot be determined with precision. The Company&#8217;s financial instruments consist primarily of cash, cash equivalents and marketable securities.</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#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 marketable securities are classified as available-for-sale and are carried at fair market value based on quoted market prices.</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>


   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Impairment of Long-Lived Assets</b></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 reviews long-lived assets for impairment whenever events or changes in its business circumstances indicate that the carrying amounts of the assets <em style="font: inherit;"> may </em><em style="font: inherit;">not</em> be fully recoverable. If it is determined that the undiscounted future net cash flows are <em style="font: inherit;">not</em> sufficient to recover the carrying values of the assets, an impairment loss is recognized for the excess of the carrying values over the fair values of the assets. The Company believes that the future undiscounted net cash flows to be received from its long-lived assets exceed the assets&#8217; carrying values and, accordingly, the Company has <span style="-sec-ix-hidden:c81754655"><span style="-sec-ix-hidden:c81754657">not</span></span> recognized any impairment losses for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><em style="font: inherit;"/></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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Revenue Recognition</b></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;">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 <em style="font: inherit;">third</em> 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 <em style="font: inherit;">not</em> 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 <em style="font: inherit;">third</em> 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 <em style="font: inherit;">not</em> pass to the customer at the time of manufacture, based upon the nature of the private labelling. The Company has determined as of <em style="font: inherit;"> December 31, 2021 </em>that it had <em style="font: inherit;">no</em> material contract assets, and concluded that its contract liabilities (primarily rebates) had the right of offset against customer receivables. As of <em style="font: inherit;"> December 31, 2021, </em>we had <em style="font: inherit;"><span style="-sec-ix-hidden:c81754670">no</span></em> contract liabilities as compared to $209,000 as of <em style="font: inherit;"> December 31, 2020, </em>as a result of customer advance payments of orders in connection with the COVID-<em style="font: inherit;">19</em> pandemic. See Note <em style="font: inherit;">15</em> and Note <em style="font: inherit;">16</em> of these Notes to Consolidated Financial Statements 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; text-align: justify; margin: 0pt 0pt 0pt 21pt;"/>
   <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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Shipping and Handling Costs</b></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 costs of shipping products to distributors are recorded in cost of goods sold.</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/>
   <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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Stock-Based Compensation</b></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 maintains a stock option plan under which the Company <em style="font: inherit;"> may </em>grant incentive stock options and non-qualified stock options to employees and non-employee directors. 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.</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 accounts for share-based awards in accordance with ASC <em style="font: inherit;">718,</em> Stock Compensation. ASC <em style="font: inherit;">718</em> requires companies to record compensation expense for the value of all outstanding and unvested share-based awards, including employee stock options.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">For the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020</em> there were <em style="font: inherit;">no</em> stock options granted under the Company&#8217;s stock option plan. The Company recognized $185,000 and $375,000 in share-based compensation expense for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively, related to outstanding options.&#160; For the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> 15,140 and 8,912 restricted stock equity awards were granted under the <em style="font: inherit;">2020</em> Incentive Plan respectively and the compensation expense associated with these awards was $131,000 and $6,000 in <em style="font: inherit;">2021</em> and <em style="font: inherit;">2020</em> respectively.</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;margin:0pt;"/>


   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Income Taxes</b></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 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 <em style="font: inherit;">not</em> 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 <em style="font: inherit;">not</em> that the position will <em style="font: inherit;">not</em> 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 21pt;">Alpha Pro Tech, Ltd. and its subsidiaries file income tax returns in the U.S. federal jurisdiction, and in various state and foreign jurisdictions. &#160;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/>
   <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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Earnings Per Common Share</b></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 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 potential common shares, and &#8220;diluted&#8221; EPS, which includes all potential common shares which are dilutive for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

     <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 22pt;"><tbody><tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 18%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Years Ended December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net income (numerator)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">6,756,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">26,888,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Shares (denominator):</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Basic weighted average common shares outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,225,628</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,449,987</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Add: Dilutive effect of common stock options</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">273,814</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">522,158</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Diluted weighted average common shares outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,499,442</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,972,145</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Earnings per common share:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Basic</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.51</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">2.00</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Diluted</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.50</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1.92</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
</tbody></table>
     <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Translation of Foreign Currencies</b></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;">Transactions in foreign currencies are translated into U.S. dollars at the exchange rate prevailing at the transaction date. Monetary assets and liabilities in foreign currencies at each period end are translated at the exchange rate in effect at that date. Transaction gains or losses on foreign currencies are reflected in selling, general and administrative expenses and were <em style="font: inherit;">not</em> material for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></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 does <em style="font: inherit;">not</em> have a material foreign currency exposure due to the fact that all purchase agreements with companies in Asia and Mexico are in U.S. dollars. In addition, all sales transactions are in U.S. dollars. The Company&#8217;s only foreign currency exposure is with its Canadian branch office. The foreign currency exposure is <em style="font: inherit;">not</em> material due to the fact that the Company does <em style="font: inherit;">not</em> manufacture products in Canada. The exposure primarily relates to payroll expenses in the Company&#8217;s administrative branch office in Canada.</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/>
   <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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Research and Development Costs</b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#160;</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">Research and development costs are expensed as incurred and are included in selling, general and administrative expenses. Such costs were <em style="font: inherit;">not</em> material for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><em style="font: inherit;"/></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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Advertising Costs</b></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 expenses advertising and promotional costs as incurred. These costs are included in selling, general and administrative expenses and were $27,000 and $32,000 for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively.</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/>
   <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;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Loss Contingencies</b></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 outcomes of legal proceedings and claims brought against the Company are subject to uncertainty. An estimated loss from a loss contingency such as a legal proceeding or claim is accrued if it is probable that an asset has been impaired or a liability has been incurred and the amount of the loss can be reasonably estimated. In determining whether a loss should be accrued, we evaluate, among other factors, the degree of probability of an unfavorable outcome and the ability to make a reasonable estimate of the amount of loss.</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;margin:0pt;"/>attestation<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Fair Value Measurements</b></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;">ASC <em style="font: inherit;">820,</em> Fair Value Measurements and Disclosures, establishes a framework for measuring fair value in accordance with U.S. GAAP, clarifies the definition of fair value within that framework and expands disclosures about the use of fair value measurements. On a quarterly basis, the Company measures at fair value certain financial assets using a hierarchy of valuation techniques based on whether the inputs to those valuation techniques are observable or unobservable. Observable inputs reflect market data obtained from independent sources, while unobservable inputs reflect the Company&#8217;s own assumptions. The following fair value hierarchy prioritizes the inputs into <em style="font: inherit;">three</em> broad levels.</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;">This hierarchy requires the Company to minimize the use of unobservable inputs and to use observable market data, if available, when determining fair value. There were <em style="font: inherit;">no</em> fair values of the Company&#8217;s financial assets as of <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><em style="font: inherit;"/></p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#160;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Reclassifications</b></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;">Certain reclassifications have been made to the prior years&#8217; consolidated financial statements to conform to current year presentation. Certain financial information is presented on a rounded basis, which <em style="font: inherit;"> may </em>cause minor differences.</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/>
   <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;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>New Accounting Standards</b></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;">In <em style="font: inherit;"> June 2016, </em>the Financial Accounting Standards Board (&#8220;FASB&#8221;) issued Accounting Standards Update (&#8220;ASU&#8221;) <em style="font: inherit;">2016</em>-<em style="font: inherit;">13</em> Financial Instruments - Credit Losses (Topic <em style="font: inherit;">326</em>): Measurement of Credit Losses on Financial Instruments. ASU <em style="font: inherit;">2016</em>-<em style="font: inherit;">13</em> requires an organization to measure all expected credit losses for financial assets held at the reporting date based on historical experience, current conditions and reasonable and supportable forecasts. ASU <em style="font: inherit;">2016</em>-<em style="font: inherit;">13</em> is effective for public companies for the annual periods, including interim periods within those annual periods, beginning after <em style="font: inherit;"> December 15, 2019. </em>This guidance was applicable to the Company&#8217;s fiscal year beginning <em style="font: inherit;"> January 1, 2020. </em>Adoption of the new standard did <em style="font: inherit;">not</em> have a material impact on our 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 21pt;">In <em style="font: inherit;"> December 2019, </em>the FASB issued ASU <em style="font: inherit;">No.</em> <em style="font: inherit;">2019</em>-<em style="font: inherit;">12,</em> Income Taxes (Topic <em style="font: inherit;">740</em>): Simplifying the Accounting for Income Taxes, which is intended to simplify various aspects related to accounting for income taxes. ASU <em style="font: inherit;">2019</em>-<em style="font: inherit;">12</em> removes certain exceptions to the general principles in Topic <em style="font: inherit;">740</em> and also clarifies and amends existing guidance to improve consistent application. This guidance is effective for fiscal years, and interim periods within those fiscal years, beginning after <em style="font: inherit;"> December 15, 2020, </em>with early adoption permitted. Adoption of the new standard did <em style="font: inherit;">not</em> have a material impact on our 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 21pt;">Management periodically reviews new accounting standards that are issued. Management has <em style="font: inherit;">not</em> identified any other 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; text-align: justify; margin: 0pt 0pt 0pt 21pt;"/>
  <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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18726-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI http://asc.fasb.org/topic&amp;trid=2122369<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>21
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001163160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Investments<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock', window );">Investments in Debt and Marketable Equity Securities (and Certain Trading Assets) 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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">3.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Investments</b></p> </td></tr>
</tbody></table>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">As of <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> <span style="-sec-ix-hidden:c81754758"><span style="-sec-ix-hidden:c81754759">no</span></span> marketable securities investments were owned.&#160; No marketable securities were sold during the year ended <em style="font: inherit;"> December 31, 2021. </em>Certain marketable securities were sold during the year ended <em style="font: inherit;"> December 31, 2020, </em>for a net realized &#160;loss of $62,000.&#160;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#160;</p>


   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
  <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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for  investments in certain debt and equity securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 320<br> -URI http://asc.fasb.org/subtopic&amp;trid=2209399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 320<br> -URI http://asc.fasb.org/subtopic&amp;trid=2324412<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -URI http://asc.fasb.org/topic&amp;trid=2196928<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 320<br> -URI http://asc.fasb.org/subtopic&amp;trid=2176304<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher SEC<br> -Name Regulation S-K (SK)<br> -Number 229<br> -Section 1403<br> -Paragraph (b)<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001133544">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Inventories<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">4.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><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 21pt;">Inventories 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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Raw materials</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">13,545,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">9,729,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Work in process</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3,890,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,003,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Finished goods</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">7,534,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">5,017,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Total inventory</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">24,969,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">16,749,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI http://asc.fasb.org/topic&amp;trid=2126998<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001188408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Property and Equipment<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">Property, Plant and Equipment 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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">5.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Property and Equipment</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;">Property and equipment consisted of the following:</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 18pt; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b> </b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Buildings</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">493,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">493,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Machinery and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">15,273,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">13,039,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Office furniture and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,177,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,076,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Leasehold improvements</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">553,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">517,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Software</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">18,499,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">16,128,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Less accumulated depreciation and amortization</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(12,435,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(11,775,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 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(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total net property and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">6,064,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">4,353,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
</tbody></table>

   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">Depreciation and amortization expense for property and equipment was $813,000 and $725,000 for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> 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_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_PropertyPlantAndEquipmentDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99893-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -URI http://asc.fasb.org/topic&amp;trid=2155823<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=SL120174063-112916<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99779-112916<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001080920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Goodwill and Intangible Assets<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock', window );">Goodwill and Intangible Assets 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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">6.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Goodwill and Intangible Assets</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;">Management evaluates goodwill for impairment on an annual basis (<em style="font: inherit;">fourth</em> quarter), and <span style="-sec-ix-hidden:c81754799"><span style="-sec-ix-hidden:c81754800">no</span></span> impairment charge was identified for the years presented.</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;">Definite-lived intangible assets, consisting of patents and trademarks, are amortized over their useful lives. Intangible assets 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="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31, 2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31, 2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amortization </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Period (Years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Gross </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Carrying</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Accumulated Amortization</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Net </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Carrying</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amortization </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Period </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>(Years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Gross</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Carrying </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Accumulated Amortization</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Net </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Carrying </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Patents and Trademarks</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2.0</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">474,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(471,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">3,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">3.0</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">474,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(467,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">7,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 23pt;">Amortization expense for intangible assets was $4,000 and $4,000 for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively.<b> </b></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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 23pt;">Estimated future amortization expense related to definite-lived intangible assets is as follows:</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 23pt;"><b><span style="text-decoration: underline; ">Years ending <em style="font: inherit;"> December 31,</em></span></b></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;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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td colspan="2" style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 17.4%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; width: 63.6%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">`</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td colspan="2" style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">3,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_GoodwillAndIntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -URI http://asc.fasb.org/topic&amp;trid=2144416<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001098904">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Equity Investments in Unconsolidated Affiliate<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">7.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Equity Investments 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 <em style="font: inherit;">2005,</em> 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 loan 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:c81754820">four</span> facilities in India (<span style="-sec-ix-hidden:c81754821">three</span> owned and <span style="-sec-ix-hidden:c81754822">one</span> rented), consisting of: (<em style="font: inherit;">1</em>) a 113,000 square foot building for manufacturing building products; (<em style="font: inherit;">2</em>) a 73,000 square foot building for manufacturing coated material and sewing proprietary disposable protective apparel; (<em style="font: inherit;">3</em>) a 16,000 square foot facility for sewing proprietary disposable protective apparel; and (<em style="font: inherit;">4</em>) a 93,000 square foot facility (rented) for manufacturing Building Supply segment products. All additions have been financed by Harmony with <em style="font: inherit;">no</em> guarantees from the Company.</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;">In accordance with ASC <em style="font: inherit;">810,</em> Consolidation, the Company assesses whether or <em style="font: inherit;">not</em> related entities are variable interest entities (&#8220;VIEs&#8221;). For those related entities that qualify as VIEs, ASC <em style="font: inherit;">810</em> requires the Company to determine whether or <em style="font: inherit;">not</em> the Company is the primary beneficiary of the VIE, and, if so, to consolidate the VIE. The Company has determined that Harmony is <em style="font: inherit;">not</em> 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:c81754837"><span style="-sec-ix-hidden:c81754838">no</span></span> impairment was required as of <em style="font: inherit;"> December 31, 2021 </em>or <em style="font: inherit;"> December 31, 2020.</em></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 years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> the Company purchased $26,252,000 and $18,623,000 of inventories, respectively, from Harmony. For the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> the Company recorded equity in income of unconsolidated affiliate of $571,000 and $710,000, respectively. For the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> the Company sold $1,931,000 and $1,087,000 of inventories, respectively, to Harmony.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">As of <em style="font: inherit;"> December 31, 2021, </em>the Company&#8217;s investment in Harmony was $6,120,000, which consisted of its original $1,450,000 investment and cumulative equity in income of unconsolidated affiliate of $5,689,000, less $942,000 in repayments of an advance and payments of $77,000 in dividends.</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
  <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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -URI http://asc.fasb.org/topic&amp;trid=2196965<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>26
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001096312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Accrued Liabilities<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">8.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; 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 21pt;">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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Payroll expenses and tax payable</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">187,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">123,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Commission and bonuses payable and general accrued liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,063,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,670,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total accrued liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,250,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">2,793,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">Contract liabilities were $2,238,000 and $2,263,000 as of <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively, which are netted against the related accounts receivable due to the legal right of offset.</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_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a),20,24)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001157336">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Notes Payable<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">Debt 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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">9.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Notes Payable</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 maintained a $3,500,000 credit facility with Wells Fargo Bank, which expired in <em style="font: inherit;"> May 2020, </em>and which the Company decided <em style="font: inherit;">not</em> to renew. The Company has continued its relationship with Wells Fargo, with the exception of the credit facility. As of <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> the Company had <span style="-sec-ix-hidden:c81754870"><span style="-sec-ix-hidden:c81754871">no</span></span> outstanding borrowings and <span style="-sec-ix-hidden:c81754872"><span style="-sec-ix-hidden:c81754873">no</span></span> other debt.</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_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -URI http://asc.fasb.org/topic&amp;trid=2208564<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495334-112611<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495371-112611<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495371-112611<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495334-112611<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495334-112611<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495371-112611<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>28
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001136488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Shareholders' Equity<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock', window );">Shareholders' Equity and Share-based Payments [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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">10.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Shareholders</b>&#8217;<b> Equity</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;text-indent:21pt;"><b>Repurchase Program</b></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 20pt;text-indent:1pt;">During the year ended <em style="font: inherit;"> December 31, 2021, </em>the Company repurchased and retired 439,000 shares of its common stock for $4,408,000. During the year ended <em style="font: inherit;"> December 31, 2020, </em>the Company repurchased and retired 223,100 shares of its common stock for $2,666,000. As of <em style="font: inherit;"> December 31, 2021, </em>the Company had $2,078,000 available to repurchase common shares under the repurchase program.</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;text-indent:21pt;"><b>Option Activity</b></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 <em style="font: inherit;">2004</em> Stock Option Plan (the <em style="font: inherit;">&#8220;2004</em> Plan&#8221;) is an equity compensation plan that provides for grants of stock options to eligible individuals.&#160; The <em style="font: inherit;">2004</em> Plan is intended to recognize the contributions made to the Company by key employees of the Company, provide key employees with additional incentive to devote themselves to the future success of the Company and improve the ability of the Company to attract, retain and motivate individuals.&#160; The <em style="font: inherit;">2004</em> Plan also is intended as an incentive to certain members of the Board of Directors of the Company to continue to serve on the Board of Directors and to devote themselves to the future success of the Company.</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 <em style="font: inherit;">2004</em> Plan provides for a total of 5,000,000 common shares eligible for issuance. Under the <em style="font: inherit;">2004</em> Plan, approximately 5,009,750 options had been granted as of <em style="font: inherit;"> December 31, 2020. </em>Under the <em style="font: inherit;">2004</em> Plan, option grants have a <span style="-sec-ix-hidden:c81754889">three</span>-year vesting period and, since <em style="font: inherit;">2005,</em> expire <em style="font: inherit;">no</em> later than the <span style="-sec-ix-hidden:c81754892">fifth</span> anniversary from the date of grant. The exercise price of the options is determined based on the fair market value of the stock on the date of grant.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">At the Company&#8217;s <em style="font: inherit;">2020</em> Annual Meeting of Shareholders held on <em style="font: inherit;"> June 9, 2020, </em>the Company&#8217;s shareholders approved the Alpha Pro Tech, Ltd. <em style="font: inherit;">2020</em> Omnibus Incentive Plan (the <em style="font: inherit;">&#8220;2020</em> Incentive Plan&#8221;).&#160; The <em style="font: inherit;">2020</em> 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.&#160; A total of 1,800,000 shares of the Company&#8217;s common stock are reserved for issuance under the <em style="font: inherit;">2020</em> Incentive Plan, plus the number of shares underlying any award granted under the <em style="font: inherit;">2004</em> Option Plan that expires, terminates or is cancelled or forfeited under the terms of the <em style="font: inherit;">2004</em> Option Plan.&#160; As a result of the approval of the <em style="font: inherit;">2020</em> Incentive Plan, <em style="font: inherit;">no</em> future equity awards will be made pursuant to the <em style="font: inherit;">2004</em> Option Plan. Although <em style="font: inherit;">no</em> new awards <em style="font: inherit;"> may </em>be granted under the <em style="font: inherit;">2004</em> Option Plan, all previously granted awards under the <em style="font: inherit;">2004</em> Option Plan will continue to be governed by the terms of the <em style="font: inherit;">2004</em> Option Plan. As of <em style="font: inherit;"> December 31, 2021, </em>24,052 restricted stock equity awards had been granted under the <em style="font: inherit;">2020</em> Incentive Plan, the total for <span style="-sec-ix-hidden:c81754910">2021</span> compensation expense of these awards is $131,000. As of <em style="font: inherit;"> December 31, 2021, </em>$79,000 of total unrecognized compensation cost related to the restricted stock grants was expected to be recognized over a weighted-average remainder period of 0.73 years.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">The following table summarizes option activity for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020:</em></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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Average</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Exercise Price</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Shares</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Per Option</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Options outstanding, December 31, 2019</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1,326,414</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2.86</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Granted to employees and directors</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Exercised</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(757,674</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2.64</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Canceled/expired/forfeited</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Options outstanding, December 31, 2020</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">568,740</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.42</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Granted to employees and directors</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Exercised</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(134,494</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.17</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Canceled/expired/forfeited</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(6,666</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.62</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Options outstanding, December 31, 2021</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">427,580</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.50</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Options exercisable, December 31, 2021</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">315,583</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.47</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">Stock options to purchase 427,580 and 568,740 shares of common stock were outstanding as of <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively.&#160;All of the stock options were included in the computation of the weighted-average number of dilutive common shares outstanding for the year ended <em style="font: inherit;"> December 31, 2021. </em>All of the stock options, were included in the computation of the weighted-average number of dilutive common shares outstanding for the year ended <em style="font: inherit;"> December 31, 2021.</em></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 20pt;">The Company used the Black-Scholes option-pricing model to value the options. The Company uses historical data to estimate the expected term of the options. The risk-free interest rate for periods consistent with the expected term of the award is based on the U.S. Treasury rates in effect at the time of grant. The expected volatility is based on historical volatility. The Company uses an estimated dividend payout ratio of zero, as the Company has <span style="-sec-ix-hidden:c81754919">not</span> paid dividends in the past and, at this time, does <em style="font: inherit;">not</em> expect to do so in the foreseeable future. The Company accounts for option forfeitures as they occur.</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;margin:0pt 0pt 0pt 20pt;text-indent:20pt;">The following table summarizes information about stock options as of <em style="font: inherit;"> December 31, 2021:</em></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="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 5%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 2%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 5%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 34%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Options</b> <b>Outstanding</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 34%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Options</b> <b>Exercisable</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td colspan="3" rowspan="1" style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 7%; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Range</b> <b>of</b></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Exercise</b></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Prices</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Options</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b> <b>Exercise</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Price</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Remaining</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Contract Life</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>(in years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Aggregate</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Intrinsic </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Value</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Options</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b> <b>Exercise </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Price</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Remaining</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Contract Life </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>(in years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Aggregate</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Intrinsic</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Value</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 5%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: right;">$3.42</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 2%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 5%;">$3.90</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">427,580</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.50</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1.91</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1,056,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">315,583</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.47</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1.77</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">790,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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;">The intrinsic value is the amount by which the market value of the underlying common stock exceeds the exercise price of the respective stock options. The aggregate intrinsic value of stock options exercised during the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020</em> was $806,000 and $10,772,000, respectively.</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 <em style="font: inherit;"> December 31, 2021, </em>$37,000 of total unrecognized compensation cost related to stock options was expected to be recognized over a weighted-average remaining period of 0.42 years. Cash received from 134,494 options exercised for the year ended <em style="font: inherit;"> December 31, 2021 </em>was $427,000.</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;text-indent:21pt;"><b>Dividends</b></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 holders of the Company&#8217;s common stock are entitled to receive such dividends as <em style="font: inherit;"> may </em>be declared by the Board of Directors of the Company from time to time to the extent that funds are legally available for payment thereof. The Company has never declared or paid any dividends on any of its outstanding shares of common stock. The Board of Directors&#8217; current policy is <em style="font: inherit;">not</em> to pay dividends but rather to use available funds to repurchase common shares in accordance with the Company&#8217;s repurchase program and to fund the continued development and growth of the Company. Consequently, the Company currently has <em style="font: inherit;">no</em> plans to pay cash dividends in the foreseeable future.</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
  <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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_ShareholdersEquityAndShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for shareholders' equity and share-based payment arrangement. Includes, but is not limited to, disclosure of policy and terms of share-based payment arrangement, deferred compensation arrangement, and employee stock purchase plan (ESPP).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -URI http://asc.fasb.org/topic&amp;trid=2208762<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI http://asc.fasb.org/topic&amp;trid=2228938<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001121848">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Income Taxes<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 18pt;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">11.</em></b></p> </td><td style="width: auto;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><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;text-indent:23pt;">The provision (benefit) for income taxes 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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>For the Years Ended December 31,</b> </b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Current</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">1,516,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">5,313,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Deferred</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">228,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">47,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 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(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Provision for income taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,744,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">5,360,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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;text-indent:23pt;">Deferred income tax assets (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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Temporary differences:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Property and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(993,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(706,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Intangible assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(10,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(9,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Inventory reserve</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">79,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">24,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Accrued expenses and inventory</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">216,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">250,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Basis difference in investments</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">35,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">35,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign exchange</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">11,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(40,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">AMT/Foreign tax credits</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">42,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">State income taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(171,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(117,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net deferred income tax liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(791,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(563,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</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 provision for income taxes differs from the amount that would be obtained by applying the U.S. statutory rate to income before income taxes as a result 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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>For the Years Ended December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Income taxes based on U.S. statutory rate of 21% and 34%, respectively</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1,785,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">6,772,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Non-deductible meals and entertainment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">5,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">FDII deduction</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(49,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(348,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Foreign taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(120,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(38,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">State taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">219,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">747,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Stock Compensation</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(106,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(2,171,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">15,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">393,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Provision for income taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,744,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">5,360,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
  <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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32857-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330215-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.5.Q1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32705-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 270<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6424409&amp;loc=d3e44925-109338<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI http://asc.fasb.org/topic&amp;trid=2144680<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6424122&amp;loc=d3e41874-109331<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>30
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797006454040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 12 - Leases<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 18pt;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">12.</em></b></p> </td><td style="width: auto;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><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;"><b>Operating Lease Commitments:</b> The Company leases its facilities under non-cancelable operating leases expiring on various dates through <em style="font: inherit;"> January 1, 2024. </em>The Company has operating leases for the Company&#8217;s corporate office and manufacturing facilities, which expire at various dates through&#160;<em style="font: inherit;">2024.</em> The Company&#8217;s primary operating lease commitments at&#160;<em style="font: inherit;"> December 31, 2021 </em>related to the Company&#8217;s manufacturing facilities in Valdosta, Georgia, Nogales, Arizona and Salt Lake City, Utah, as well as the Company&#8217;s corporate headquarters in Markham, Ontario, Canada.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;">As of&#160;<em style="font: inherit;"> December 31, 2021, </em>the Company had operating lease right-of-use assets of&#160;$2,648,000&#160;and operating lease liabilities of&#160;$2,700,000. As of&#160;<em style="font: inherit;"> December 31, 2021, </em>we did <span style="-sec-ix-hidden:c81755009">not</span> have any finance leases recorded on the Company&#8217;s consolidated balance sheet.&#160;Operating lease expense was approximately&#160;$1,199,000 and $1,154,000 for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;">The aggregate future minimum lease payments and reconciliation to lease liabilities as of&#160;<em style="font: inherit;"> December 31, 2021 </em>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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">1,010,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1,017,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2024</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">484,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2025</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">365,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total future minimum lease payments</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,876,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Less imputed interest</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(176,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total lease liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">2,700,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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 <em style="font: inherit;"> December 31, 2021, </em>the weighted average remaining lease term of the Company&#8217;s operating leases was&#160;3.08 years. During the year ended <em style="font: inherit;"> December 31, 2021, </em>the weighted average discount rate with respect to these leases was&#160;4.17%.</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -URI http://asc.fasb.org/subtopic&amp;trid=77888251<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001121848">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 13 - Legal<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 18pt;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">13.</em></b></p> </td><td style="width: auto;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Legal </b>&#160;</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;"><b>Legal Proceedings:</b> The Company is subject to various pending and threatened litigation actions in the ordinary course of business. Although it is <em style="font: inherit;">not</em> 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 <em style="font: inherit;">not</em> 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI http://asc.fasb.org/topic&amp;trid=2127136<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -URI http://asc.fasb.org/topic&amp;trid=2144648<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 440<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6491277&amp;loc=d3e6429-115629<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>32
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001155384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 14 - Employee Benefit Plans<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock', window );">Retirement Benefits [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: 18pt;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">14.</em></b></p> </td><td style="width: auto;"> <p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Employee Benefit Plans</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 certain benefit plans. Under the plans, employees <em style="font: inherit;"> may </em>contribute up to 12% of their gross earnings subject to certain limitations. The Company contributes an additional 0.5% of gross earnings for those employees contributing <em style="font: inherit;">1%</em> of their gross earnings and contributes 1% of gross earnings for those employees contributing <em style="font: inherit;">2%</em> to <em style="font: inherit;">12%</em> of their gross earnings. The amounts contributed to the plans by the Company were $53,000 and $45,000 for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively.</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 does <em style="font: inherit;">not</em> have any other significant pension, profit sharing or similar plans established for its employees. Pursuant to his employment agreement with the Company, Lloyd Hoffman, our President and Chief Executive Officer, is contractually entitled to receive from the Company at the conclusion of each fiscal year a cash bonus in an amount equal to 5% pre-tax profits of the Company, excluding bonus expense, as presented in the Company&#8217;s audited consolidated statements of income for such&#160;fiscal year, subject to a maximum payment of $1,000,000. The Company accrued $447,000 for the year ended <em style="font: inherit;"> December 31, 2021, </em>compared to $1,000,000 for <em style="font: inherit;">2020,</em> in connection with the bonus.</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_PensionAndOtherPostretirementBenefitsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for retirement benefits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section S99<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=21916913&amp;loc=d3e273930-122802<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (o)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (p)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 70<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=49170846&amp;loc=d3e28014-114942<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -URI http://asc.fasb.org/topic&amp;trid=2235017<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 60<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6414203&amp;loc=d3e39689-114964<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(03)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (q)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (r)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (l)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (r)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797004817944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - Activity of Business Segments<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 18pt;"> <p style="margin: 0pt; text-align: left; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">15.</em></b><b> </b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: left; font-family: Times New Roman; 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:c81755042">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;">(<em style="font: inherit;">1</em>) <b>Building Supply</b>: consisting of a line of construction supply weatherization products. The construction supply weatherization products consist of housewrap 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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">(<em style="font: inherit;">2</em>) <b>Disposable Protective Apparel</b>: 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 <em style="font: inherit;">2</em>). Segment data excludes charges allocated to the principal executive office and other corporate unallocated expenses and income taxes. 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 following table presents net sales for each segment:</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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Years Ended December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Building Supply</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">36,889,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">30,580,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Disposable Protective Apparel</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">31,748,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">72,120,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 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(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Consolidated net sales</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">68,637,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">102,700,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
</tbody></table>

   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;text-indent:-23pt;">The following table presents the reconciliation of total segment income to total consolidated net income:</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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Years Ended December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Building Supply</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">7,350,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">5,396,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Disposable Protective Apparel</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">6,706,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">33,501,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total segment income</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">14,056,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">38,897,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Unallocated corporate overhead expenses</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">5,556,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">6,649,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Provision for income taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,744,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">5,360,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Consolidated net income</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">6,756,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">26,888,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">The following table presents net sales and long-lived asset information by geographic area:</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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Years Ended December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net sales by geographic region</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">United States</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">65,844,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">90,495,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">International</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,793,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">12,205,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Consolidated net sales</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">68,637,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">102,700,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
</tbody></table>

   <p style="margin: 0pt;">&#160;</p>

    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><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;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>As of December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">United States</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">4,623,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">2,787,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">International</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,441,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,566,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">6,064,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">4,353,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; 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 years ended <em style="font: inherit;"> December 31, 2021, </em>the Company did <em style="font: inherit;">not</em> generate sales from any single country, except the United States, that were significant to the Company&#8217;s consolidated net sales. For the year ended <em style="font: inherit;"> December 31, 2021 </em>the Company generated sales of approximately $8,090,000 from Australia. <em style="font: inherit;">No</em> other single 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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">The following table presents the consolidated net property, equipment, goodwill and intangible assets by segment:</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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>As of December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Building Supply</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">3,600,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">1,806,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Disposable Protective Apparel</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,419,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,432,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total segment assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">5,019,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3,238,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Unallocated corporate assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,103,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,177,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total consolidated assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">6,122,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">4,415,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 34<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8981-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8721-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 26<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8844-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8657-108599<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8721-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -URI http://asc.fasb.org/topic&amp;trid=2134510<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>34
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001107752">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Concentration of Risk<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskDisclosureTextBlock', window );">Concentration Risk 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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">16.</em> </b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Concentration of Risk</b></p> </td></tr>
</tbody></table>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt; text-align: justify;">The Company maintains its cash and cash equivalents in various bank accounts, the balances of which at times <em style="font: inherit;"> may </em>exceed federally insured limits. The Company has <em style="font: inherit;">not</em> experienced any losses related to these accounts, and management does <em style="font: inherit;">not</em> believe that the Company is exposed to significant credit risk.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">The Company&#8217;s investments in marketable securities were held in <em style="font: inherit;">one</em> publicly traded entity.&#160; The Company recognized a gain on investment in common stock warrants in a prior period and during <em style="font: inherit;">2020</em> recognized a net realized loss of $62,000 in the consolidated statement of comprehensive income. The Company was exposed to the fluctuation in the stock price of this investment when it held these securities. As of <em style="font: inherit;"> December 31, 2021 </em>the Company <em style="font: inherit;">no</em> longer holds any investments in marketable securities.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">Management believes that adequate provision has been made for risk of loss on all credit transactions.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">The Company buys a significant amount of its disposable protective apparel products from a limited number of contract manufacturers located in Asia and, to a much lesser extent, a contract manufacturer in Mexico. Management believes that other suppliers could provide similar products at comparable terms. A change in suppliers, however, could cause a delay in shipment and a possible loss of sales, which would affect operating results adversely.</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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">The Building Supply segment buys semi-finished housewrap and synthetic roof underlayment from its joint venture, Harmony, located in India. Although there are a limited number of manufacturers of the particular product, management believes that other suppliers could provide similar products at comparable terms. A change in suppliers, however, could cause a delay in shipment and a possible loss of sales, which would affect operating results adversely.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">The Company provides products to customers located primarily in the United States. Customers accounting for 10% or more of accounts receivable as of <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> and 10% or more of net sales for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> 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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Accounts Receivable:</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer A</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">13</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">11</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer B</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">19</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">*</em></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer C</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">*</em></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">18</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 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(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Net sales:</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer A</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">21</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">15</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer B</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">13</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">*</em></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer C</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">*</em></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">10</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;"><b>* </b>Customer&#8217;s balance was below the <em style="font: inherit;">10%</em> threshold for accounts receivable and/or net sales as of and for the year ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;"> December 31, 2020.</em></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_ConcentrationRiskDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -URI http://asc.fasb.org/topic&amp;trid=2134479<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskDisclosureTextBlock</td>
</tr>
<tr>
<td style="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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>35
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001079800">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 17 - Employment Agreements<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_apt_EmploymentAgreementsTextBlock', window );">Employment Agreements [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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">17.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b>Employment Agreements</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;">The Company has entered into an employment agreement with its current President and Chief Executive Officer, which has a term of approximately <span style="-sec-ix-hidden:c81755124">five</span> years and which renews in accordance with its terms.&#160; The agreement provides that, if the officer&#8217;s employment is terminated without cause, as defined in the agreements, the officer is entitled to receive certain severance payments.&#160; If termination occurs due to retirement, the officers will enter into a <em style="font: inherit;">four</em>-year consulting arrangement with the Company at a specified percentage of the officer&#8217;s then current salary. Upon death or disability, the Company will also make certain payments to the officer or the officer&#8217;s estate or beneficiary, as applicable.</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_EmploymentAgreementsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure relating to employment agreements in which the reporting entity is involved.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_EmploymentAgreementsTextBlock</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>36
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001178232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 18 - Related Party Transactions<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">18.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; 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;">During <em style="font: inherit;">2021,</em> the Company&#8217;s only material related party transactions were the Company&#8217;s transactions with its non-consolidated affiliate, Harmony. See Note <em style="font: inherit;">7.</em></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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -URI http://asc.fasb.org/topic&amp;trid=2122745<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39691-107864<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>37
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001173336">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 19 - Out-of-Period Adjustment<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_apt_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock', window );">Error Corrections and Prior Period Adjustments [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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">19.</em></b></p> </td><td style="width: auto; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><b>Out-of-Period Adjustment</b></td></tr>
</tbody></table>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">During the financial close for the year ended <em style="font: inherit;"> December 31, 2021, </em>the Company discovered certain immaterial errors in its income tax accounting related to state tax apportionments and deferred tax assets in relation to Incentive Stock Options (&#8220;ISO&#8221;).&#160; In periods prior to <em style="font: inherit;"> January 1, 2020, </em>the Company should have recognized approximately $291,000 of additional tax expense, primarily related to stock compensation from ISOs&#8217;. As a result, the Company has increased its accrued liabilities by $12,000 and deferred income tax liabilities by <em style="font: inherit;">$279,000</em> and decreased its retained earnings by $291,000 as of <em style="font: inherit;"> December 31, 2019. </em>Furthermore, for the year ended <em style="font: inherit;"> December 31, 2020, </em>the Company should have recognized $154,000 in additional state income tax expense and $44,000 in additional income tax expense for ISOs that were being treated as deferred tax asset instead of expense. The error was corrected by increasing the provision for income tax in <em style="font: inherit;">2020</em> by $198,000. Accrued liabilities were increased by $198,000, deferred income tax liabilities were increased by $279,000 and retained earnings was decreased by $489,000 as of <em style="font: inherit;"> December 31, 2020.</em></p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
   <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">These revisions resulted in a decrease of earnings per share and diluted earnings per share of $.01 and $.02, respectively for the year ended <em style="font: inherit;"> December 31, 2020.&#160; </em>Management has determined that this revision was <em style="font: inherit;">not</em> material on a quantitative or qualitative basis to the prior period financial statements based on our analysis performed in accordance with the guidance provided by SEC Staff Accounting Bulletins <em style="font: inherit;">No.</em> <em style="font: inherit;">99</em> &#8211;&#160;Materiality&#160;and <em style="font: inherit;">No.</em> <em style="font: inherit;">108</em> &#8211;&#160;Considering the Effects of Prior Year Misstatements</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_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of prior period adjustments to previously issued financial statements including (1) the effect of the correction on each financial statement line item and any per-share amounts affected for each prior period presented (2) the cumulative effect of the change on retained earnings or other appropriate components of equity or net assets in the statement of financial position, as of the beginning of the earliest period presented, and (3) the effect of the prior period adjustments (both gross and net of applicable income tax) on the net income of each prior period presented in the entity's annual report for the year in which the adjustments are made.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>38
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001581528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 20 - Subsequent Events<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 18pt;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"><b><em style="font: inherit;">20.</em></b></p> </td><td style="width: auto;"> <p style="margin: 0pt; text-align: justify; font-family: Times New Roman; 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 23pt;">The Company has reviewed and evaluated whether any additional material subsequent events have occurred from <em style="font: inherit;"> December 31, 2021 </em>through the filing date of the Company&#8217;s Annual Report on Form <em style="font: inherit;">10</em>-K.&#160; All appropriate subsequent event disclosures have been made in the consolidated financial statements.</p>
   <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/>
  <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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -URI http://asc.fasb.org/topic&amp;trid=2122774<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6842918&amp;loc=SL6314017-165662<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>39
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797004776424">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConsolidationPolicyTextBlock', window );">Consolidation, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Principles of Consolidation</b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">The consolidated financial statements of the Company include the accounts of the Company and its wholly-owned subsidiaries, Alpha Pro Tech, Inc. and Alpha ProTech Engineered Products, Inc. All significant intercompany accounts and transactions have been eliminated in consolidation.</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;">Events that occurred after <em style="font: inherit;"> December 31, 2021 </em>through the date on which these financial statements were filed with the Securities and Exchange Commission (&#8220;SEC&#8221;) were considered in the preparation of these financial statements.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of Estimates, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Use of Estimates</b></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 preparation of financial statements in conformity with U.S. generally accepted accounting principles (&#8220;U.S. GAAP&#8221;) requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and the disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses for the reporting period. Actual results could differ from these estimates.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock', window );">Basis of Accounting, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Periods Presented</b></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;">All amounts have been rounded to the nearest thousand with the exception of the per share data. The Company qualified as a smaller reporting company at the measurement date for determining such qualification during <em style="font: inherit;">2021.</em> According to the disclosure requirements for smaller reporting companies, the Company has included balance sheets as of the end of the <em style="font: inherit;">two</em> most recent years and statements of income, comprehensive income, shareholders&#8217; equity and cash flows for each of the <em style="font: inherit;">two</em> most recent years.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and Cash Equivalents, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Cash and Cash Equivalents</b></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 considers all highly liquid investments purchased with an original maturity of <em style="font: inherit;">three</em> months or less to be cash equivalents.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MarketableSecuritiesPolicy', window );">Marketable Securities, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Investments</b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#160;</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">Investments are classified as available-for-sale in accordance with U.S. GAAP. The Company does <em style="font: inherit;">not</em> have any investments in securities that are classified as held-to-maturity or trading. Available-for-sale investments are carried at their fair values using quoted prices in active markets for identical securities, with realized and unrealized gains and losses reported in net income. The cost of securities sold is based on the specific identification method. Investments that the Company intends to hold for more than <em style="font: inherit;">one</em> year are classified as long-term investments in the accompanying consolidated balance sheets.&#160;&#160;&#160;&#160;</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReceivablesPolicyTextBlock', window );">Receivable [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Accounts Receivable</b></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;">Accounts receivable are recorded at the invoice amount and do <em style="font: inherit;">not</em> bear interest.&#160; The allowance for doubtful accounts is the Company&#8217;s best estimate of the amount of probable credit losses in the Company&#8217;s existing accounts receivable; however, changes in circumstances relating to accounts receivable <em style="font: inherit;"> may </em>result in a requirement for additional allowances in the future.&#160; The Company determines the allowance based upon historical write-off experience and known conditions about its customers&#8217; current ability to pay.&#160; Account balances are charged against the allowance when management determines that the probability for collection is remote.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryPolicyTextBlock', window );">Inventory, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Inventories</b></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;">Inventories include freight-in, materials, labor and overhead costs and are stated at the lower of cost or net realizable value. Allowances are recorded for slow-moving, obsolete or unusable inventories. The Company assesses inventories for estimated obsolescence or unmarketable products and writes down the difference between the cost of the inventories and the estimated net realizable values based upon assumptions about future sales and supplies on-hand.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property, Plant and Equipment, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Property and Equipment</b></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;">Property and equipment are stated at cost less accumulated depreciation and amortization. Costs to develop internal use software are charged to expense as incurred until the preliminary project stage has been completed and application development begins. The Company discontinues capitalization upon entering the post-implementation stage and expenses ongoing maintenance and support costs. Property and equipment are depreciated or amortized using the straight-line method over the shorter of the respective useful lives of the assets or the related lease terms as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

     <table cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 80%; margin-left: 22pt; margin-right: auto;"><tbody><tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="width: 85%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Buildings (in years)</td><td style="width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font: inherit;">&#160;</em></td><td style="width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">25</td><td style="width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font: inherit;">&#160;</em></td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Machinery and equipment (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;">5</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;">15</td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Office furniture and equipment (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;">2</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;">7</td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Leasehold improvements (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;">4</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;">5</td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Software (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;"><em style="font: inherit;">&#160;</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;">5</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;"><em style="font: inherit;">&#160;</em></td></tr>
</tbody></table>
     <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 21pt;">&#160;</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">Expenditures for renewals and betterments are capitalized, whereas costs of maintenance and repairs are charged to operations in the period incurred.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy', window );">Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Goodwill and Intangible Assets</b></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 accounts for goodwill and definite-lived intangible assets in accordance with Financial Accounting Standards Board (&#8220;FASB&#8221;) Accounting Standards Codification (&#8220;ASC&#8221;) <em style="font: inherit;">350,</em> Intangibles &#8211; Goodwill and Other. Goodwill is <em style="font: inherit;">not</em> amortized, but rather is tested annually for impairment. Intangible assets with finite lives are amortized over their useful lives (see Note <em style="font: inherit;">6</em>). The Company&#8217;s patents and trademarks are recorded at cost and are amortized using the straight-line method over their estimated useful lives of 5-17 years.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueOfFinancialInstrumentsPolicy', window );">Fair Value of Financial Instruments, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Fair Value of Financial Instruments</b></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 estimated fair values of financial instruments are determined based on relevant market information and cannot be determined with precision. The Company&#8217;s financial instruments consist primarily of cash, cash equivalents and marketable securities.</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#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 marketable securities are classified as available-for-sale and are carried at fair market value based on quoted market prices.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Impairment of Long-Lived Assets</b></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 reviews long-lived assets for impairment whenever events or changes in its business circumstances indicate that the carrying amounts of the assets <em style="font: inherit;"> may </em><em style="font: inherit;">not</em> be fully recoverable. If it is determined that the undiscounted future net cash flows are <em style="font: inherit;">not</em> sufficient to recover the carrying values of the assets, an impairment loss is recognized for the excess of the carrying values over the fair values of the assets. The Company believes that the future undiscounted net cash flows to be received from its long-lived assets exceed the assets&#8217; carrying values and, accordingly, the Company has <span style="-sec-ix-hidden:c81754655"><span style="-sec-ix-hidden:c81754657">not</span></span> recognized any impairment losses for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRecognitionPolicyTextBlock', window );">Revenue [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Revenue Recognition</b></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;">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 <em style="font: inherit;">third</em> 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 <em style="font: inherit;">not</em> 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 <em style="font: inherit;">third</em> 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 <em style="font: inherit;">not</em> pass to the customer at the time of manufacture, based upon the nature of the private labelling. The Company has determined as of <em style="font: inherit;"> December 31, 2021 </em>that it had <em style="font: inherit;">no</em> material contract assets, and concluded that its contract liabilities (primarily rebates) had the right of offset against customer receivables. As of <em style="font: inherit;"> December 31, 2021, </em>we had <em style="font: inherit;"><span style="-sec-ix-hidden:c81754670">no</span></em> contract liabilities as compared to $209,000 as of <em style="font: inherit;"> December 31, 2020, </em>as a result of customer advance payments of orders in connection with the COVID-<em style="font: inherit;">19</em> pandemic. See Note <em style="font: inherit;">15</em> and Note <em style="font: inherit;">16</em> of these Notes to Consolidated Financial Statements for information on revenue disaggregated by type and by geographic region.</p><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="top.Show.showAR( this, 'defref_apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock', window );">Revenue from Contract with Customer, Shipping and Handling, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Shipping and Handling Costs</b></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 costs of shipping products to distributors are recorded in cost of goods sold.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Share-based Payment Arrangement [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Stock-Based Compensation</b></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 maintains a stock option plan under which the Company <em style="font: inherit;"> may </em>grant incentive stock options and non-qualified stock options to employees and non-employee directors. 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.</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 accounts for share-based awards in accordance with ASC <em style="font: inherit;">718,</em> Stock Compensation. ASC <em style="font: inherit;">718</em> requires companies to record compensation expense for the value of all outstanding and unvested share-based awards, including employee stock options.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;">For the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020</em> there were <em style="font: inherit;">no</em> stock options granted under the Company&#8217;s stock option plan. The Company recognized $185,000 and $375,000 in share-based compensation expense for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively, related to outstanding options.&#160; For the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> 15,140 and 8,912 restricted stock equity awards were granted under the <em style="font: inherit;">2020</em> Incentive Plan respectively and the compensation expense associated with these awards was $131,000 and $6,000 in <em style="font: inherit;">2021</em> and <em style="font: inherit;">2020</em> respectively.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxPolicyTextBlock', window );">Income Tax, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Income Taxes</b></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 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 <em style="font: inherit;">not</em> 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 <em style="font: inherit;">not</em> that the position will <em style="font: inherit;">not</em> 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 21pt;">Alpha Pro Tech, Ltd. and its subsidiaries file income tax returns in the U.S. federal jurisdiction, and in various state and foreign jurisdictions. &#160;</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerSharePolicyTextBlock', window );">Earnings Per Share, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Earnings Per Common Share</b></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 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 potential common shares, and &#8220;diluted&#8221; EPS, which includes all potential common shares which are dilutive for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

     <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 22pt;"><tbody><tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 18%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Years Ended December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net income (numerator)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">6,756,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">26,888,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Shares (denominator):</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Basic weighted average common shares outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,225,628</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,449,987</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Add: Dilutive effect of common stock options</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">273,814</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">522,158</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Diluted weighted average common shares outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,499,442</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,972,145</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Earnings per common share:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Basic</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.51</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">2.00</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Diluted</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.50</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1.92</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
</tbody></table>
     <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Foreign Currency Transactions and Translations Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Translation of Foreign Currencies</b></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;">Transactions in foreign currencies are translated into U.S. dollars at the exchange rate prevailing at the transaction date. Monetary assets and liabilities in foreign currencies at each period end are translated at the exchange rate in effect at that date. Transaction gains or losses on foreign currencies are reflected in selling, general and administrative expenses and were <em style="font: inherit;">not</em> material for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></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 does <em style="font: inherit;">not</em> have a material foreign currency exposure due to the fact that all purchase agreements with companies in Asia and Mexico are in U.S. dollars. In addition, all sales transactions are in U.S. dollars. The Company&#8217;s only foreign currency exposure is with its Canadian branch office. The foreign currency exposure is <em style="font: inherit;">not</em> material due to the fact that the Company does <em style="font: inherit;">not</em> manufacture products in Canada. The exposure primarily relates to payroll expenses in the Company&#8217;s administrative branch office in Canada.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpensePolicy', window );">Research and Development Expense, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Research and Development Costs</b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">&#160;</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">Research and development costs are expensed as incurred and are included in selling, general and administrative expenses. Such costs were <em style="font: inherit;">not</em> material for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdvertisingCostsPolicyTextBlock', window );">Advertising Cost [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Advertising Costs</b></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 expenses advertising and promotional costs as incurred. These costs are included in selling, general and administrative expenses and were $27,000 and $32,000 for the years ended <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020,</em> respectively.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesPolicyTextBlock', window );">Commitments and Contingencies, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Loss Contingencies</b></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 outcomes of legal proceedings and claims brought against the Company are subject to uncertainty. An estimated loss from a loss contingency such as a legal proceeding or claim is accrued if it is probable that an asset has been impaired or a liability has been incurred and the amount of the loss can be reasonably estimated. In determining whether a loss should be accrued, we evaluate, among other factors, the degree of probability of an unfavorable outcome and the ability to make a reasonable estimate of the amount of loss.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementPolicyPolicyTextBlock', window );">Fair Value Measurement, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/>attestation<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Fair Value Measurements</b></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;">ASC <em style="font: inherit;">820,</em> Fair Value Measurements and Disclosures, establishes a framework for measuring fair value in accordance with U.S. GAAP, clarifies the definition of fair value within that framework and expands disclosures about the use of fair value measurements. On a quarterly basis, the Company measures at fair value certain financial assets using a hierarchy of valuation techniques based on whether the inputs to those valuation techniques are observable or unobservable. Observable inputs reflect market data obtained from independent sources, while unobservable inputs reflect the Company&#8217;s own assumptions. The following fair value hierarchy prioritizes the inputs into <em style="font: inherit;">three</em> broad levels.</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;">This hierarchy requires the Company to minimize the use of unobservable inputs and to use observable market data, if available, when determining fair value. There were <em style="font: inherit;">no</em> fair values of the Company&#8217;s financial assets as of <em style="font: inherit;"> December 31, 2021 </em>and <em style="font: inherit;">2020.</em></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PriorPeriodReclassificationAdjustmentDescription', window );">Reclassification, Comparability Adjustment [Policy Text Block]</a></td>
<td class="text"><p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>Reclassifications</b></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;">Certain reclassifications have been made to the prior years&#8217; consolidated financial statements to conform to current year presentation. Certain financial information is presented on a rounded basis, which <em style="font: inherit;"> may </em>cause minor differences.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">New Accounting Pronouncements, Policy [Policy Text Block]</a></td>
<td class="text"><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"><b>New Accounting Standards</b></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;">In <em style="font: inherit;"> June 2016, </em>the Financial Accounting Standards Board (&#8220;FASB&#8221;) issued Accounting Standards Update (&#8220;ASU&#8221;) <em style="font: inherit;">2016</em>-<em style="font: inherit;">13</em> Financial Instruments - Credit Losses (Topic <em style="font: inherit;">326</em>): Measurement of Credit Losses on Financial Instruments. ASU <em style="font: inherit;">2016</em>-<em style="font: inherit;">13</em> requires an organization to measure all expected credit losses for financial assets held at the reporting date based on historical experience, current conditions and reasonable and supportable forecasts. ASU <em style="font: inherit;">2016</em>-<em style="font: inherit;">13</em> is effective for public companies for the annual periods, including interim periods within those annual periods, beginning after <em style="font: inherit;"> December 15, 2019. </em>This guidance was applicable to the Company&#8217;s fiscal year beginning <em style="font: inherit;"> January 1, 2020. </em>Adoption of the new standard did <em style="font: inherit;">not</em> have a material impact on our 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 21pt;">In <em style="font: inherit;"> December 2019, </em>the FASB issued ASU <em style="font: inherit;">No.</em> <em style="font: inherit;">2019</em>-<em style="font: inherit;">12,</em> Income Taxes (Topic <em style="font: inherit;">740</em>): Simplifying the Accounting for Income Taxes, which is intended to simplify various aspects related to accounting for income taxes. ASU <em style="font: inherit;">2019</em>-<em style="font: inherit;">12</em> removes certain exceptions to the general principles in Topic <em style="font: inherit;">740</em> and also clarifies and amends existing guidance to improve consistent application. This guidance is effective for fiscal years, and interim periods within those fiscal years, beginning after <em style="font: inherit;"> December 15, 2020, </em>with early adoption permitted. Adoption of the new standard did <em style="font: inherit;">not</em> have a material impact on our 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 21pt;">Management periodically reviews new accounting standards that are issued. Management has <em style="font: inherit;">not</em> identified any other new standards that it believes merit further discussion at this time.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for the classification of shipping and handling costs, including whether the costs are included in cost of sales or included in other income statement accounts. If shipping and handling fees are significant and are not included in cost of sales, disclosure includes both the amounts of such costs and the line item on the income statement which includes such costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock</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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdvertisingCostsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for advertising cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 720<br> -SubTopic 35<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6420018&amp;loc=d3e36677-107848<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdvertisingCostsPolicyTextBlock</td>
</tr>
<tr>
<td style="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_BasisOfAccountingPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfAccountingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4273-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsPolicyTextBlock</td>
</tr>
<tr>
<td style="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_CommitmentsAndContingenciesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for commitments and contingencies, which may include policies for recognizing and measuring loss and gain contingencies.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123368208&amp;loc=d3e12565-110249<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 450<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6491354&amp;loc=d3e6049-115624<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesPolicyTextBlock</td>
</tr>
<tr>
<td style="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_ConsolidationPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting.  The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=d3e5614-111684<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConsolidationPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerSharePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerSharePolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueMeasurementPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueOfFinancialInstrumentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for determining the fair value of financial instruments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 60<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=7493716&amp;loc=d3e21868-110260<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13279-108611<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueOfFinancialInstrumentsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -URI http://asc.fasb.org/topic&amp;trid=2175825<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for goodwill. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy</td>
</tr>
<tr>
<td style="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_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 05<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109226317&amp;loc=d3e202-110218<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.CC)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011434&amp;loc=d3e125687-122742<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="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_IncomeTaxPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32247-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32847-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32840-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL116659661-227067<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32280-109318<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="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_InventoryPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4556-108314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 330<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6471895&amp;loc=d3e55923-109411<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4492-108314<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124437754&amp;loc=d3e543-108305<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI http://asc.fasb.org/topic&amp;trid=2126998<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryPolicyTextBlock</td>
</tr>
<tr>
<td style="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_MarketableSecuritiesPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for investment classified as marketable security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 320<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123599081&amp;loc=d3e62652-112803<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MarketableSecuritiesPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PriorPeriodReclassificationAdjustmentDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429488&amp;loc=d3e326-107755<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PriorPeriodReclassificationAdjustmentDescription</td>
</tr>
<tr>
<td style="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_PropertyPlantAndEquipmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99779-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99893-112916<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentPolicyTextBlock</td>
</tr>
<tr>
<td style="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_ReceivablesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for receivable. Includes, but is not limited to, accounts receivable and financing receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5033-111524<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10178-111534<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10149-111534<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10133-111534<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesPolicyTextBlock</td>
</tr>
<tr>
<td style="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_ResearchAndDevelopmentExpensePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for costs it has incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpensePolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRecognitionPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRecognitionPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b),(f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6191-108592<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6161-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6143-108592<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6061-108592<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6132-108592<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UseOfEstimates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001129400">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Summary of Significant Accounting Policies (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock', window );">Property, Plant, and Equipment, Useful Lives [Table Text Block]</a></td>
<td class="text">
     <table cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 80%; margin-left: 22pt; margin-right: auto;"><tbody><tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="width: 85%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Buildings (in years)</td><td style="width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font: inherit;">&#160;</em></td><td style="width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">25</td><td style="width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font: inherit;">&#160;</em></td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Machinery and equipment (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;">5</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;">15</td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Office furniture and equipment (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;">2</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;">7</td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Leasehold improvements (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;">4</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;">5</td></tr>
<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%;">Software (in years)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;"><em style="font: inherit;">&#160;</em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;">5</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 5%;"><em style="font: inherit;">&#160;</em></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="top.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 cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 22pt;"><tbody><tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 18%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Years Ended December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net income (numerator)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">6,756,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">26,888,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Shares (denominator):</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Basic weighted average common shares outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,225,628</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,449,987</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Add: Dilutive effect of common stock options</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">273,814</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">522,158</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Diluted weighted average common shares outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,499,442</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,972,145</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 66%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Earnings per common share:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Basic</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.51</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">2.00</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Diluted</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.50</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1.92</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
</tbody></table>
    <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of useful life of long lived, physical assets used in the normal conduct of business and not intended for resale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_PropertyPlantAndEquipmentUsefulLivesTableTextBlock</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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001084552">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 10%; margin-left: 18pt; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Raw materials</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">13,545,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">9,729,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Work in process</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3,890,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,003,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Finished goods</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">7,534,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">5,017,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;">Total inventory</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">24,969,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">16,749,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>42
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001080360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Property and Equipment (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Property, Plant and Equipment [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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b> </b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Buildings</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">493,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">493,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Machinery and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">15,273,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">13,039,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Office furniture and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,177,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,076,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Leasehold improvements</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">553,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">517,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Software</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">18,499,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">16,128,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Less accumulated depreciation and amortization</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(12,435,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(11,775,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 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(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total net property and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">6,064,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">4,353,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>43
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797003825832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Goodwill and Intangible Assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of Finite-Lived Intangible Assets [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31, 2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31, 2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amortization </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Period (Years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Gross </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Carrying</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Accumulated Amortization</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Net </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Carrying</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amortization </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Period </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>(Years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Gross</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Carrying </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Accumulated Amortization</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Net </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Carrying </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Patents and Trademarks</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2.0</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">474,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(471,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">3,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">3.0</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">474,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(467,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 7%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">7,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="top.Show.showAR( this, 'defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td colspan="2" style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 17.4%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; width: 63.6%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">`</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td colspan="2" style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">3,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>44
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001220264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Accrued Liabilities (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Payroll expenses and tax payable</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">187,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">123,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Commission and bonuses payable and general accrued liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,063,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,670,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total accrued liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,250,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">2,793,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of accrued liabilities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>45
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797003824440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Shareholders' Equity (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 10%; margin-left: 18pt; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Average</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Exercise Price</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Shares</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Per Option</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Options outstanding, December 31, 2019</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1,326,414</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2.86</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Granted to employees and directors</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Exercised</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(757,674</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2.64</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Canceled/expired/forfeited</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Options outstanding, December 31, 2020</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">568,740</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.42</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Granted to employees and directors</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Exercised</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(134,494</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.17</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Canceled/expired/forfeited</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(6,666</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.62</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Options outstanding, December 31, 2021</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">427,580</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.50</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Options exercisable, December 31, 2021</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">315,583</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.47</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock', window );">Share-based Payment Arrangement, Activity [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 5%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 2%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 5%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 34%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Options</b> <b>Outstanding</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 34%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Options</b> <b>Exercisable</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td colspan="3" rowspan="1" style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 7%; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Range</b> <b>of</b></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Exercise</b></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><b>Prices</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Options</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b> <b>Exercise</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Price</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Remaining</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Contract Life</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>(in years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Aggregate</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Intrinsic </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Value</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Options</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b> <b>Exercise </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Price</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Weighted</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Remaining</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Contract Life </b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>(in years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Aggregate</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Intrinsic</b></b></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Value</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 5%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: right;">$3.42</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 2%; text-align: center;"><em style="font: inherit;">-</em></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 5%;">$3.90</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">427,580</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.50</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1.91</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1,056,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">315,583</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3.47</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1.77</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">790,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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_ScheduleOfShareBasedCompensationActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of activity for award under share-based payment arrangement. Includes, but is not limited to, outstanding award at beginning and end of year, granted, exercised, forfeited, and weighted-average grant date fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>46
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001682840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Income Taxes (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Schedule of Components of Income Tax Expense (Benefit) [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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>For the Years Ended December 31,</b> </b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Current</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">1,516,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">5,313,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Deferred</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">228,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">47,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 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(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Provision for income taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,744,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 14%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">5,360,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Schedule of Deferred Tax Assets and Liabilities [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Temporary differences:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Property and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(993,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(706,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Intangible assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(10,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(9,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Inventory reserve</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">79,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">24,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Accrued expenses and inventory</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">216,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">250,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Basis difference in investments</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">35,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">35,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign exchange</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">11,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(40,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">AMT/Foreign tax credits</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">42,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">State income taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(171,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(117,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net deferred income tax liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(791,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(563,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</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="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]</a></td>
<td class="text">
    <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>For the Years Ended December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Income taxes based on U.S. statutory rate of 21% and 34%, respectively</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1,785,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">6,772,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Non-deductible meals and entertainment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">5,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">FDII deduction</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(49,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(348,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Foreign taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(120,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(38,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">State taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">219,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">747,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Stock Compensation</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(106,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(2,171,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Other</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">15,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">393,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Provision for income taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,744,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">5,360,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock</td>
</tr>
<tr>
<td style="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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>47
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001581528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 12 - Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Lessee, Operating Lease, Liability, 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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2022</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">1,010,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2023</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1,017,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2024</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">484,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">2025</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">365,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total future minimum lease payments</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,876,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Less imputed interest</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(176,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total lease liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">2,700,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>48
<FILENAME>R36.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001477128">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - Activity of Business Segments (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Years Ended December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Building Supply</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">36,889,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">30,580,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Disposable Protective Apparel</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">31,748,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">72,120,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 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(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Consolidated net sales</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">68,637,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">102,700,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="top.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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Years Ended December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Building Supply</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">7,350,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">5,396,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Disposable Protective Apparel</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">6,706,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">33,501,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total segment income</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">14,056,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">38,897,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Unallocated corporate overhead expenses</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">5,556,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">6,649,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Provision for income taxes</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,744,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">5,360,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Consolidated net income</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">6,756,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">26,888,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="top.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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>Years Ended December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net sales by geographic region</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">United States</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">65,844,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">90,495,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">International</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,793,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">12,205,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Consolidated net sales</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">68,637,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">102,700,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><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;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>As of December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">United States</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">4,623,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">2,787,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">International</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,441,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,566,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">6,064,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">4,353,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="top.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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>As of December 31,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Building Supply</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">3,600,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">1,806,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Disposable Protective Apparel</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,419,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,432,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total segment assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">5,019,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3,238,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Unallocated corporate assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,103,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,177,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total consolidated assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">6,122,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">4,415,000</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_ScheduleOfSegmentReportingInformationBySegmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8813-108599<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>49
<FILENAME>R37.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001196568">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Concentration of Risk (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock', window );">Schedule of Revenue by Major Customers by Reporting Segments [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: &quot;Times New Roman&quot;; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>December 31,</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td></tr>
<tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; 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>2020</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; 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: &quot;Times New Roman&quot;; font-size: 10pt; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Accounts Receivable:</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer A</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">13</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">11</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer B</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">19</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">*</em></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer C</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">*</em></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">18</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 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(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Net sales:</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#160;</b></td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer A</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">21</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">15</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer B</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">13</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td colspan="2" style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">*</em></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td></tr>
<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 54pt;">Customer C</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">*</em></td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#160;</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">10</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">%</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_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the extent of the entity's reliance on its major customers, if revenues from transactions with a single external customer amount to 10 percent or more of entity revenues, including the disclosure of that fact, the total amount of revenues from each such customer, and the identity of the reportable segment or segments reporting the revenues. The entity need not disclose the identity of a major customer or the amount of revenues that each segment reports from that customer. For these purposes, a group of companies known to the entity to be under common control is considered a single customer, and the federal government, a state government, a local government such as a county or municipality, or a foreign government is each considered a single customer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock</td>
</tr>
<tr>
<td style="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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>50
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797000076440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Summary of Significant Accounting Policies (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1">19 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetImpairmentCharges', window );">Asset Impairment Charges, Total</a></td>
<td class="nump">$ 0<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="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Contract with Customer, Liability, Current</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">209,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="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">185,000<span></span>
</td>
<td class="nump">375,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="top.Show.showAR( this, 'defref_us-gaap_AdvertisingExpense', window );">Advertising Expense</a></td>
<td class="nump">27,000<span></span>
</td>
<td class="nump">32,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="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock [Member] | 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="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">$ 131,000<span></span>
</td>
<td class="nump">$ 6,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="top.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">15,140<span></span>
</td>
<td class="nump">8,912<span></span>
</td>
<td class="nump">24,052<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Finite-Lived Intangible Asset, Useful Life (Year)</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Finite-Lived Intangible Asset, Useful Life (Year)</a></td>
<td class="text">17 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdvertisingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount charged to advertising expense for the period, which are expenses incurred with the objective of increasing revenue for a specified brand, product or product line.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 720<br> -SubTopic 35<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6420018&amp;loc=d3e36677-107848<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdvertisingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=122041274&amp;loc=d3e301413-122809<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_AssetImpairmentCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123351718&amp;loc=d3e2420-110228<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetImpairmentCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130531-203044<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130532-203044<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetUsefulLife</td>
</tr>
<tr>
<td style="padding-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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_AwardTypeAxis=us-gaap_RestrictedStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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_PlanNameAxis=apt_IncentivePlan2020Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797000154168">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Summary of Significant Accounting Policies - Property and Equipment (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember', window );">Building [Member]</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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment (Year)</a></td>
<td class="text">25 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and Equipment [Member] | Minimum [Member]</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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment (Year)</a></td>
<td class="text">5 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and Equipment [Member] | Maximum [Member]</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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment (Year)</a></td>
<td class="text">15 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and Fixtures [Member] | Minimum [Member]</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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment (Year)</a></td>
<td class="text">2 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and Fixtures [Member] | Maximum [Member]</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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment (Year)</a></td>
<td class="text">7 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold Improvements [Member] | Minimum [Member]</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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment (Year)</a></td>
<td class="text">4 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold Improvements [Member] | Maximum [Member]</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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment (Year)</a></td>
<td class="text">5 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareDevelopmentMember', window );">Software Development [Member]</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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment (Year)</a></td>
<td class="text">5 years<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_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareDevelopmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareDevelopmentMember</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>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797002631192">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Summary of Significant Accounting Policies - 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">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 6,756,000<span></span>
</td>
<td class="nump">$ 26,888,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="top.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="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic weighted average common shares outstanding (in shares)</a></td>
<td class="nump">13,225,628<span></span>
</td>
<td class="nump">13,449,987<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Add: Dilutive effect of common stock options (in shares)</a></td>
<td class="nump">273,814<span></span>
</td>
<td class="nump">522,158<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted average common shares outstanding (in shares)</a></td>
<td class="nump">13,499,442<span></span>
</td>
<td class="nump">13,972,145<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic earnings per common share (in dollars per share)</a></td>
<td class="nump">$ 0.51<span></span>
</td>
<td class="nump">$ 2.00<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted earnings per common share (in dollars per share)</a></td>
<td class="nump">$ 0.50<span></span>
</td>
<td class="nump">$ 1.92<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1448-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e4984-109258<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e3842-109258<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1252-109256<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e3842-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1252-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1707-109256<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28A<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1500-109256<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1757-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>53
<FILENAME>R41.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797091157720">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Investments (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MarketableSecurities', window );">Marketable Securities, Total</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities', window );">Proceeds from Sale and Maturity of Marketable Securities, Total</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MarketableSecuritiesGainLoss', window );">Marketable Securities, Gain (Loss), Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (62,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_MarketableSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of investment in marketable security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MarketableSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_MarketableSecuritiesGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of unrealized and realized gain (loss) on investment in marketable security, including other-than-temporary impairment (OTTI).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MarketableSecuritiesGainLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromSaleAndMaturityOfMarketableSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow associated with the aggregate amount received by the entity through sale or maturity of marketable securities  (held-to-maturity or available-for-sale) during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>54
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797004731608">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 4 - Inventories - Inventories (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsNetOfReserves', window );">Raw materials</a></td>
<td class="nump">$ 13,545,000<span></span>
</td>
<td class="nump">$ 9,729,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="top.Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcessNetOfReserves', window );">Work in process</a></td>
<td class="nump">3,890,000<span></span>
</td>
<td class="nump">2,003,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="top.Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoodsNetOfReserves', window );">Finished goods</a></td>
<td class="nump">7,534,000<span></span>
</td>
<td class="nump">5,017,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="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Total inventory</a></td>
<td class="nump">$ 24,969,000<span></span>
</td>
<td class="nump">$ 16,749,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_InventoryFinishedGoodsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>55
<FILENAME>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797094952456">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Property and Equipment (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationAndAmortization', window );">Depreciation, Depletion and Amortization, Nonproduction, Total</a></td>
<td class="nump">$ 813,000<span></span>
</td>
<td class="nump">$ 725,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_DepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797002624312">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 5 - Property and Equipment - Property and Equipment (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BuildingsAndImprovementsGross', window );">Buildings</a></td>
<td class="nump">$ 493,000<span></span>
</td>
<td class="nump">$ 493,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="top.Show.showAR( this, 'defref_us-gaap_MachineryAndEquipmentGross', window );">Machinery and equipment</a></td>
<td class="nump">15,273,000<span></span>
</td>
<td class="nump">13,039,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="top.Show.showAR( this, 'defref_us-gaap_FurnitureAndFixturesGross', window );">Office furniture and equipment</a></td>
<td class="nump">2,177,000<span></span>
</td>
<td class="nump">2,076,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="top.Show.showAR( this, 'defref_us-gaap_LeaseholdImprovementsGross', window );">Leasehold improvements</a></td>
<td class="nump">553,000<span></span>
</td>
<td class="nump">517,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="top.Show.showAR( this, 'defref_us-gaap_CapitalizedComputerSoftwareGross', window );">Software</a></td>
<td class="nump">3,000<span></span>
</td>
<td class="nump">3,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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, Plant and Equipment, Gross, Ending Balance</a></td>
<td class="nump">18,499,000<span></span>
</td>
<td class="nump">16,128,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="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less accumulated depreciation and amortization</a></td>
<td class="num">(12,435,000)<span></span>
</td>
<td class="num">(11,775,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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Total net property and equipment</a></td>
<td class="nump">$ 6,064,000<span></span>
</td>
<td class="nump">$ 4,353,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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.14)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BuildingsAndImprovementsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation of building structures held for productive use including addition, improvement, or renovation to the structure, including, but not limited to, interior masonry, interior flooring, electrical, and plumbing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6812-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BuildingsAndImprovementsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CapitalizedComputerSoftwareGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated amortization of capitalized costs for computer software, including but not limited to, acquired and internally developed computer software.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedComputerSoftwareGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FurnitureAndFixturesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation of equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FurnitureAndFixturesGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LeaseholdImprovementsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation of additions or improvements to assets held under a lease arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6812-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseholdImprovementsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_MachineryAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6812-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MachineryAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001166136">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Goodwill and Intangible Assets (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillImpairmentLoss', window );">Goodwill, Impairment Loss</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of Intangible Assets, Total</a></td>
<td class="nump">$ 4,000<span></span>
</td>
<td class="nump">$ 4,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_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GoodwillImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of loss from the write-down of an asset representing the 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13777-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillImpairmentLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>58
<FILENAME>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797000130024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Goodwill and Intangible Assets - Definite-lived Intangible Assets (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Amount</a></td>
<td class="nump">$ 3,000<span></span>
</td>
<td class="nump">$ 7,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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=apt_PatentsAndTrademarksMember', window );">Patents and Trademarks [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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Weighted Average Amortization Period (Year)</a></td>
<td class="text">2 years<span></span>
</td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Amount</a></td>
<td class="nump">$ 474,000<span></span>
</td>
<td class="nump">$ 474,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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(471,000)<span></span>
</td>
<td class="num">(467,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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Amount</a></td>
<td class="nump">$ 3,000<span></span>
</td>
<td class="nump">$ 7,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_FiniteLivedIntangibleAssetUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetUsefulLife</td>
</tr>
<tr>
<td style="padding-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_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 928<br> -SubTopic 340<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6473545&amp;loc=d3e61844-108004<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_FiniteLivedIntangibleAssetsByMajorClassAxis=apt_PatentsAndTrademarksMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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_FiniteLivedIntangibleAssetsByMajorClassAxis=apt_PatentsAndTrademarksMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<FILENAME>R47.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797003691272">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 6 - Goodwill and Intangible Assets - Estimated Future Amortization Expense Related to Definite-lived Intangible Assets (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2022</a></td>
<td class="nump">$ 2,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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2023</a></td>
<td class="nump">1,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">$ 3,000<span></span>
</td>
<td class="nump">$ 7,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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<FILENAME>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001293656">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Equity Investments in Unconsolidated Affiliate (Details Textual)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($) </div>
<div>ft&#178;</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </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="top.Show.showAR( this, 'defref_apt_ExpenseToAcquireInventory', window );">Expense To Acquire Inventory</a></td>
<td class="nump">$ 26,252,000<span></span>
</td>
<td class="nump">$ 18,623,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="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromEquityMethodInvestments', window );">Income (Loss) from Equity Method Investments, Total</a></td>
<td class="nump">571,000<span></span>
</td>
<td class="nump">710,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="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfProductiveAssets', window );">Proceeds from Sale of Productive Assets, Total</a></td>
<td class="nump">$ 1,931,000<span></span>
</td>
<td class="nump">1,087,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="top.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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AreaOfRealEstateProperty', window );">Area of Real Estate Property (Square Foot) | ft&#178;</a></td>
<td class="nump">113,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="top.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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AreaOfRealEstateProperty', window );">Area of Real Estate Property (Square Foot) | ft&#178;</a></td>
<td class="nump">73,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="top.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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AreaOfRealEstateProperty', window );">Area of Real Estate Property (Square Foot) | ft&#178;</a></td>
<td class="nump">16,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="top.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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AreaOfRealEstateProperty', window );">Area of Real Estate Property (Square Foot) | ft&#178;</a></td>
<td class="nump">93,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="top.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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="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="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Equity Method Investments</a></td>
<td class="nump">6,120,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="top.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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate', window );">Cumulative Equity In Income Of Unconsolidated Affiliate</a></td>
<td class="nump">5,689,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="top.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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentDividendsOrDistributions', window );">Proceeds from Equity Method Investment, Distribution</a></td>
<td class="nump">$ 77,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="top.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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="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="top.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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>CumulativeEquityInIncomeOfUnconsolidatedAffiliate</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Purchases from our Joint venture.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the number of stores owned.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the number of stores rented.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Area of a real estate property.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.12)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 21D<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=SL94080555-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 35<br> -Paragraph 32<br> -URI http://asc.fasb.org/extlink&amp;oid=124268079&amp;loc=d3e32787-111569<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109237563&amp;loc=d3e33749-111570<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8813-108599<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.12)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(13)(f))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109237563&amp;loc=d3e33749-111570<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the number of stores.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 21D<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=SL94080555-108585<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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>61
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001073576">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 8 - Accrued Liabilities (Details Textual) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Contract with Customer, Liability, Total</a></td>
<td class="nump">$ 2,238,000<span></span>
</td>
<td class="nump">$ 2,263,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_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130531-203044<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130549-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130532-203044<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>62
<FILENAME>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797003702216">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 8 - Accrued Liabilities - Accrued Liabilities (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedSalariesCurrent', window );">Payroll expenses and tax payable</a></td>
<td class="nump">$ 187,000<span></span>
</td>
<td class="nump">$ 123,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="top.Show.showAR( this, 'defref_us-gaap_AccruedBonusesCurrent', window );">Commission and bonuses payable and general accrued liabilities</a></td>
<td class="num">(1,063,000)<span></span>
</td>
<td class="num">(2,670,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="top.Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Total accrued liabilities</a></td>
<td class="nump">$ 1,250,000<span></span>
</td>
<td class="nump">$ 2,793,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_AccruedBonusesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6935-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6911-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6911-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6935-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>63
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797004684136">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 9 - Notes Payable (Details Textual) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>May 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="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of Credit Facility, Maximum Borrowing Capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,500,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCredit', window );">Long-term Line of Credit, Total</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherLongTermDebt', window );">Other Long-term Debt, Total</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_LineOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>64
<FILENAME>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139796997406568">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Shareholders' Equity (Details Textual) - USD ($)<br> Pure in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1">19 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares', window );">Stock Repurchased and Retired During Period, Shares (in shares)</a></td>
<td class="nump">439,000<span></span>
</td>
<td class="nump">223,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Payments for Repurchase of Common Stock</a></td>
<td class="nump">$ 4,408,000<span></span>
</td>
<td class="nump">$ 2,666,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="top.Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1', window );">Stock Repurchase Program, Remaining Authorized Repurchase Amount</a></td>
<td class="nump">2,078,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,078,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="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">185,000<span></span>
</td>
<td class="nump">$ 375,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="top.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">$ 37,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 37,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="top.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">5 months 1 day<span></span>
</td>
<td class="text">&#160;<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number, Ending Balance (in shares)</a></td>
<td class="nump">427,580<span></span>
</td>
<td class="nump">568,740<span></span>
</td>
<td class="nump">1,326,414<span></span>
</td>
<td class="nump">427,580<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value</a></td>
<td class="nump">$ 806,000<span></span>
</td>
<td class="nump">$ 10,772,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="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period (in shares)</a></td>
<td class="nump">134,494<span></span>
</td>
<td class="nump">757,674<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="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromStockOptionsExercised', window );">Proceeds from Stock Options Exercised</a></td>
<td class="nump">$ 427,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="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant (in shares)</a></td>
<td class="nump">5,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,009,750<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period (Year)</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PlanNameAxis=apt_IncentivePlan2020Member', window );">Incentive Plan 2020 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance', window );">Common Stock, Capital Shares Reserved for Future Issuance (in shares)</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>
<td class="nump">1,800,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="top.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)</a></td>
<td class="text">2021 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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">15,140<span></span>
</td>
<td class="nump">8,912<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">24,052<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">$ 131,000<span></span>
</td>
<td class="nump">$ 6,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="top.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">$ 79,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 79,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="top.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">8 months 23 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=122041274&amp;loc=d3e301413-122809<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate number of common shares reserved for future issuance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_PaymentsForRepurchaseOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_ProceedsFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from exercise of option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=SL79508275-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount remaining of a stock repurchase plan authorized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StockRepurchasedAndRetiredDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_PlanNameAxis=apt_The2004PlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<FILENAME>R53.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001892232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Shareholders' Equity - Stock Option Activity (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Options outstanding (in shares)</a></td>
<td class="nump">568,740<span></span>
</td>
<td class="nump">1,326,414<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Options outstanding (in dollars per share)</a></td>
<td class="nump">$ 3.42<span></span>
</td>
<td class="nump">$ 2.86<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised (in shares)</a></td>
<td class="num">(134,494)<span></span>
</td>
<td class="num">(757,674)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised (in dollars per share)</a></td>
<td class="nump">$ 3.17<span></span>
</td>
<td class="nump">$ 2.64<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod', window );">Canceled/expired/forfeited (in shares)</a></td>
<td class="num">(6,666)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice', window );">Canceled/expired/forfeited (in dollars per share)</a></td>
<td class="nump">$ 3.62<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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Options outstanding (in shares)</a></td>
<td class="nump">427,580<span></span>
</td>
<td class="nump">568,740<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Options outstanding (in dollars per share)</a></td>
<td class="nump">$ 3.50<span></span>
</td>
<td class="nump">$ 3.42<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Options exercisable (in shares)</a></td>
<td class="nump">315,583<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Options exercisable (in dollars per share)</a></td>
<td class="nump">$ 3.47<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="top.Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=apt_EmployeesAndDirectorsMember', window );">Employees and Directors [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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Granted to employees and directors (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted to employees and directors (in dollars per share)</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)-(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)-(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_srt_TitleOfIndividualAxis=apt_EmployeesAndDirectorsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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_TitleOfIndividualAxis=apt_EmployeesAndDirectorsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>66
<FILENAME>R54.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001861512">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Shareholders' Equity - Information About Stock Options (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($) </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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit', window );">Range of Exercise Prices, Upper Limit (in dollars per share)</a></td>
<td class="nump">$ 3.90<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions', window );">Options Outstanding, Options (in shares) | shares</a></td>
<td class="nump">427,580<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1', window );">Options Outstanding, Weighted Average Exercise Price (in dollars per share)</a></td>
<td class="nump">$ 3.50<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2', window );">Options Outstanding, Weighted Average Remaining Contract Life (Year)</a></td>
<td class="text">1 year 10 months 28 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Options Outstanding, Aggregate Intrinsic Value | $</a></td>
<td class="nump">$ 1,056,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="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions', window );">Options Exercisable, Options (in shares) | shares</a></td>
<td class="nump">315,583<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1', window );">Options Exercisable, Weighted Average Exercise Price (in dollars per share)</a></td>
<td class="nump">$ 3.47<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2', window );">Options Exercisable, Weighted Average Remaining Contract Life (Year)</a></td>
<td class="text">1 year 9 months 7 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1', window );">Options Exercisable, Aggregate Intrinsic Value | $</a></td>
<td class="nump">$ 790,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares reserved for issuance pertaining to the outstanding exercisable stock options as of the balance sheet date in the customized range of exercise prices for which the market and performance vesting condition has been satisfied.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The ceiling of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit</td>
</tr>
<tr>
<td style="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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1</td>
</tr>
<tr>
<td style="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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term of exercisable stock options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average price as of the balance sheet date at which grantees could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1</td>
</tr>
<tr>
<td style="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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term of outstanding stock options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<FILENAME>R55.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797091174392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Income Taxes - Provision for Income Taxes (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Current</a></td>
<td class="nump">$ 1,516,000<span></span>
</td>
<td class="nump">$ 5,313,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income taxes</a></td>
<td class="nump">228,000<span></span>
</td>
<td class="nump">47,000<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">$ 1,744,000<span></span>
</td>
<td class="nump">$ 5,360,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_CurrentIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<FILENAME>R56.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797000210712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Income Taxes - Deferred Income Tax Assets (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_apt_TemporaryDifferencesAbstract', window );"><strong>Temporary differences:</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="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="num">$ (993,000)<span></span>
</td>
<td class="num">$ (706,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="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets', window );">Intangible assets</a></td>
<td class="num">(10,000)<span></span>
</td>
<td class="num">(9,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_apt_DeferredTaxAssetsInventoryCurrent', window );">Inventory reserve</a></td>
<td class="nump">79,000<span></span>
</td>
<td class="nump">24,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="top.Show.showAR( this, 'defref_apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent', window );">Accrued expenses and inventory</a></td>
<td class="nump">216,000<span></span>
</td>
<td class="nump">250,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="top.Show.showAR( this, 'defref_us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims', window );">Basis difference in investments</a></td>
<td class="nump">35,000<span></span>
</td>
<td class="nump">35,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="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains', window );">Foreign exchange</a></td>
<td class="nump">11,000<span></span>
</td>
<td class="nump">40,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits', window );">AMT/Foreign tax credits</a></td>
<td class="nump">42,000<span></span>
</td>
<td class="nump">0<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="top.Show.showAR( this, 'defref_apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent', window );">State income taxes</a></td>
<td class="num">(171,000)<span></span>
</td>
<td class="num">(117,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="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilities', window );">Net deferred income tax liabilities</a></td>
<td class="num">$ (791,000)<span></span>
</td>
<td class="num">$ (563,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_DeferredTaxAssetsInventoryCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_DeferredTaxAssetsInventoryCurrent</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_apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible alternative minimum tax and foreign tax credit carryforwards.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits</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_apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent</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_apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Gross amount of noncurrent deferred tax liabilities, which result from applying the applicable tax rate to taxable temporary differences pertaining to each jurisdiction to which the entity is obligated to pay income tax.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>apt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_TemporaryDifferencesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Temporary differences: [Abstract]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_TemporaryDifferencesAbstract</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: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_DeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from intangible assets other than goodwill.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxLiabilitiesPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from unrealized gains on foreign currency transactions.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IssuanceOfStockAndWarrantsForServicesOrClaims">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fair value of share-based compensation granted to nonemployees as payment for services rendered or acknowledged claims.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>69
<FILENAME>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797000201208">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Income Taxes - Income Tax Reconciliation (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate', window );">Income taxes based on U.S. statutory rate of 21% and 34%, respectively</a></td>
<td class="nump">$ 1,785,000<span></span>
</td>
<td class="nump">$ 6,772,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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment', window );">Non-deductible meals and entertainment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">5,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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationTaxCreditsForeign', window );">FDII deduction</a></td>
<td class="num">(49,000)<span></span>
</td>
<td class="num">(348,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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential', window );">Foreign taxes</a></td>
<td class="num">(120,000)<span></span>
</td>
<td class="num">(38,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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes', window );">State taxes</a></td>
<td class="nump">219,000<span></span>
</td>
<td class="nump">747,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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost', window );">Stock Compensation</a></td>
<td class="num">(106,000)<span></span>
</td>
<td class="num">(2,171,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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationOtherReconcilingItems', window );">Other</a></td>
<td class="nump">15,000<span></span>
</td>
<td class="nump">393,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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">$ 1,744,000<span></span>
</td>
<td class="nump">$ 5,360,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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_IncomeTaxReconciliationForeignIncomeTaxRateDifferential">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign income tax expense (benefit).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to nondeductible meals and entertainment expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of reported income tax expense (benefit) in excess of (less than) expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for award under share-based payment arrangement. Includes, but is not limited to, expense determined to be nondeductible upon grant or after for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationOtherReconcilingItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to tax exempt income, equity in earnings (loss) of an unconsolidated subsidiary, minority noncontrolling interest income (loss), tax holiday, disposition of a business, disposition of an asset, repatriation of foreign earnings, repatriation of foreign earnings jobs creation act of 2004, increase (decrease) in enacted tax rate, prior year income taxes, increase (decrease) in deferred tax asset valuation allowance, and other adjustments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationOtherReconcilingItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationTaxCreditsForeign">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign tax credit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationTaxCreditsForeign</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>70
<FILENAME>R58.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001822568">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 12 - Leases (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating Lease, Right-of-Use Asset</a></td>
<td class="nump">$ 2,648,000<span></span>
</td>
<td class="nump">$ 3,535,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="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Operating Lease, Liability, Total</a></td>
<td class="nump">2,700,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="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Finance Lease, Liability, Total</a></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="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Operating Lease, Expense</a></td>
<td class="nump">$ 1,199,000<span></span>
</td>
<td class="nump">$ 1,154,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="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Operating Lease, Weighted Average Remaining Lease Term (Year)</a></td>
<td class="text">3 years 29 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Operating Lease, Weighted Average Discount Rate, Percent</a></td>
<td class="nump">4.17%<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_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of operating lease expense. Excludes sublease income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>71
<FILENAME>R59.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797000110920">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 12 - Leases - Future Minimum Lease Payment (Details)<br></strong></div></th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2022</a></td>
<td class="nump">$ 1,010,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="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2023</a></td>
<td class="nump">1,017,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="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2024</a></td>
<td class="nump">484,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="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2025</a></td>
<td class="nump">365,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="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total future minimum lease payments</a></td>
<td class="nump">2,876,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="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less imputed interest</a></td>
<td class="num">(176,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="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total lease liabilities</a></td>
<td class="nump">$ 2,700,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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>72
<FILENAME>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001551896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 14 - Employee Benefit Plans (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent', window );">Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent</a></td>
<td class="nump">12.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount', window );">Defined Contribution Plan, Employer Discretionary Contribution Amount</a></td>
<td class="nump">$ 53,000<span></span>
</td>
<td class="nump">$ 45,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="top.Show.showAR( this, 'defref_apt_BonusPercentage', window );">Bonus Percentage</a></td>
<td class="nump">5.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedBonusesCurrent', window );">Accrued Bonuses, Current</a></td>
<td class="nump">$ 1,063,000<span></span>
</td>
<td class="nump">2,670,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="top.Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=srt_PresidentMember', window );">President [Member]</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="top.Show.showAR( this, 'defref_apt_BonusMaximumThreshold', window );">Bonus, Maximum Threshold</a></td>
<td class="nump">1,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedBonusesCurrent', window );">Accrued Bonuses, Current</a></td>
<td class="nump">$ 447,000<span></span>
</td>
<td class="nump">$ 1,000,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="top.Show.showAR( this, 'defref_us-gaap_RetirementPlanTypeAxis=apt_ForEmployeesContributing1PercentOfGrossEarningsMember', window );">For Employees Contributing 1 Percent of Gross Earnings [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="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent', window );">Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay</a></td>
<td class="nump">0.50%<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="top.Show.showAR( this, 'defref_us-gaap_RetirementPlanTypeAxis=apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember', window );">For Employees Contributing 2 to12 Percent of Gross Earnings [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="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent', window );">Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay</a></td>
<td class="nump">1.00%<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_apt_BonusMaximumThreshold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum threshold for bonus payments under certain bonus plans.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_BonusMaximumThreshold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>apt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_BonusPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The bonus paid to the CEO and President in percentage of the Company's pre-tax profits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_BonusPercentage</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: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_AccruedBonusesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6935-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6911-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_DefinedContributionPlanEmployerDiscretionaryContributionAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of discretionary contributions made by an employer to a defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedContributionPlanEmployerMatchingContributionPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of employees' gross pay for which the employer contributes a matching contribution to a defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent</td>
</tr>
<tr>
<td style="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_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Maximum percentage of employee gross pay the employee may contribute to a defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=srt_PresidentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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_TitleOfIndividualAxis=srt_PresidentMember</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_RetirementPlanTypeAxis=apt_ForEmployeesContributing1PercentOfGrossEarningsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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_RetirementPlanTypeAxis=apt_ForEmployeesContributing1PercentOfGrossEarningsMember</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_RetirementPlanTypeAxis=apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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_RetirementPlanTypeAxis=apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>R61.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797002872536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - Activity of Business Segments (Details Textual)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NumberOfOperatingSegments', window );">Number of Operating Segments</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue from Contract with Customer, Including Assessed Tax</a></td>
<td class="nump">$ 68,637,000<span></span>
</td>
<td class="nump">$ 102,700,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="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_AU', window );">AUSTRALIA</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="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue from Contract with Customer, Including Assessed Tax</a></td>
<td class="nump">$ 8,090,000<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_NumberOfOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8672-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_AU">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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_AU</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<FILENAME>R62.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797004556584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - Activity of Business Segments - Consolidated Net Sales (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 68,637,000<span></span>
</td>
<td class="nump">$ 102,700,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="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=apt_BuildingSupplyMember', window );">Building Supply [Member] | 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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Net sales</a></td>
<td class="nump">36,889,000<span></span>
</td>
<td class="nump">30,580,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="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=apt_DisposableProtectiveApparelMember', window );">Disposable Protective Apparel [Member] | 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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 31,748,000<span></span>
</td>
<td class="nump">$ 72,120,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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_StatementBusinessSegmentsAxis=apt_BuildingSupplyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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_DisposableProtectiveApparelMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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>75
<FILENAME>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001490936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - 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">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Consolidated net income</a></td>
<td class="nump">$ 6,756,000<span></span>
</td>
<td class="nump">$ 26,888,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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income Tax Expense (Benefit), Total</a></td>
<td class="nump">1,744,000<span></span>
</td>
<td class="nump">5,360,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="top.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="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Consolidated net income</a></td>
<td class="nump">14,056,000<span></span>
</td>
<td class="nump">38,897,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="top.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="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Consolidated net income</a></td>
<td class="nump">7,350,000<span></span>
</td>
<td class="nump">5,396,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="top.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="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Consolidated net income</a></td>
<td class="nump">6,706,000<span></span>
</td>
<td class="nump">33,501,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="top.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="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Consolidated net income</a></td>
<td class="nump">$ 5,556,000<span></span>
</td>
<td class="nump">$ 6,649,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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>76
<FILENAME>R64.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139796997495816">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - Activity of Business Segments - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details) - Reportable Geographical Components [Member] - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract', window );"><strong>Net sales by geographic region</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="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Consolidated sales</a></td>
<td class="nump">$ 68,637,000<span></span>
</td>
<td class="nump">$ 102,700,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="top.Show.showAR( this, 'defref_us-gaap_GeographicAreasLongLivedAssetsAbstract', window );"><strong>Long-lived assets by geographic region</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="top.Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Consolidated long-lived assets</a></td>
<td class="nump">6,064,000<span></span>
</td>
<td class="nump">4,353,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="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">UNITED STATES</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="top.Show.showAR( this, 'defref_us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract', window );"><strong>Net sales by geographic region</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="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Consolidated sales</a></td>
<td class="nump">65,844,000<span></span>
</td>
<td class="nump">90,495,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="top.Show.showAR( this, 'defref_us-gaap_GeographicAreasLongLivedAssetsAbstract', window );"><strong>Long-lived assets by geographic region</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="top.Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Consolidated long-lived assets</a></td>
<td class="nump">4,623,000<span></span>
</td>
<td class="nump">2,787,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="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=apt_InternationalMember', window );">International 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="top.Show.showAR( this, 'defref_us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract', window );"><strong>Net sales by geographic region</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="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Consolidated sales</a></td>
<td class="nump">2,793,000<span></span>
</td>
<td class="nump">12,205,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="top.Show.showAR( this, 'defref_us-gaap_GeographicAreasLongLivedAssetsAbstract', window );"><strong>Long-lived assets by geographic region</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="top.Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Consolidated long-lived assets</a></td>
<td class="nump">$ 1,441,000<span></span>
</td>
<td class="nump">$ 1,566,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_GeographicAreasLongLivedAssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeographicAreasLongLivedAssetsAbstract</td>
</tr>
<tr>
<td style="padding-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_GeographicAreasRevenuesFromExternalCustomersAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract</td>
</tr>
<tr>
<td style="padding-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_NoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=srt_ReportableGeographicalComponentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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>77
<FILENAME>R65.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001279224">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 15 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_apt_TotalConsolidatedAssets', window );">Consolidated assets</a></td>
<td class="nump">$ 6,122,000<span></span>
</td>
<td class="nump">$ 4,415,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="top.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="top.Show.showAR( this, 'defref_apt_TotalConsolidatedAssets', window );">Consolidated assets</a></td>
<td class="nump">5,019,000<span></span>
</td>
<td class="nump">3,238,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="top.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="top.Show.showAR( this, 'defref_apt_TotalConsolidatedAssets', window );">Consolidated assets</a></td>
<td class="nump">3,600,000<span></span>
</td>
<td class="nump">1,806,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="top.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="top.Show.showAR( this, 'defref_apt_TotalConsolidatedAssets', window );">Consolidated assets</a></td>
<td class="nump">1,419,000<span></span>
</td>
<td class="nump">1,432,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="top.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="top.Show.showAR( this, 'defref_apt_TotalConsolidatedAssets', window );">Consolidated assets</a></td>
<td class="nump">$ 1,103,000<span></span>
</td>
<td class="nump">$ 1,177,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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total consolidated assets</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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>78
<FILENAME>R66.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001559144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Concentration of Risk (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss', window );">Debt Securities, Available-for-sale, Realized Loss</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 62,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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember', window );">Accounts Receivable [Member] | Customer Concentration Risk [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="top.Show.showAR( this, 'defref_apt_ConcentrationRiskThresholdPercentage', window );">Concentration Risk Threshold Percentage</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember', window );">Revenue Benchmark [Member] | Customer Concentration Risk [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="top.Show.showAR( this, 'defref_apt_ConcentrationRiskThresholdPercentage', window );">Concentration Risk Threshold Percentage</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_ConcentrationRiskThresholdPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The concentration risk threshold percentage derived from quantitative amount.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_ConcentrationRiskThresholdPercentage</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: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_DebtSecuritiesAvailableForSaleRealizedLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of realized loss on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123581744&amp;loc=d3e27357-111563<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<FILENAME>R67.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001893096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Concentration of Risk - Customer Concentration (Details) - Customer Concentration Risk [Member]<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Accounts Receivable [Member] | Customer A [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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer</a></td>
<td class="nump">13.00%<span></span>
</td>
<td class="nump">11.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Accounts Receivable [Member] | Customer B [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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer</a></td>
<td class="nump">19.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Accounts Receivable [Member] | Customer C [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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">18.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Revenue Benchmark [Member] | Customer A [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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">15.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Revenue Benchmark [Member] | Customer B [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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer</a></td>
<td class="nump">13.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Revenue Benchmark [Member] | Customer C [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="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13531-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13537-108611<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=apt_CustomerAMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=apt_CustomerAMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=apt_CustomerBMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=apt_CustomerBMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=apt_CustomerCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=apt_CustomerCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>80
<FILENAME>R68.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139797001144840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 17 - Employment Agreements (Details Textual)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_TitleOfIndividualAxis=srt_OfficerMember', window );">Officer [Member]</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="top.Show.showAR( this, 'defref_apt_EmploymentAgreementTerm', window );">Employment Agreement Term (Year)</a></td>
<td class="text">5 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_EmploymentAgreementTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period of the employment agreement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_EmploymentAgreementTerm</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:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=srt_OfficerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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_TitleOfIndividualAxis=srt_OfficerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>81
<FILENAME>R69.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.0.1</span><table class="report" border="0" cellspacing="2" id="idm139796997305944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 19 - Out-of-Period Adjustment (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxExpenseFromStockOptionsExercised', window );">Deferred Tax Expense from Stock Options Exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 291,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="top.Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained Earnings (Accumulated Deficit), Ending Balance</a></td>
<td class="nump">$ 62,488,000<span></span>
</td>
<td class="nump">$ 58,986,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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income Tax Expense (Benefit), Total</a></td>
<td class="nump">$ 1,744,000<span></span>
</td>
<td class="nump">$ 5,360,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="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Earnings Per Share, Basic, Total (in dollars per share)</a></td>
<td class="nump">$ 0.51<span></span>
</td>
<td class="nump">$ 2.00<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Earnings Per Share, Diluted, Total (in dollars per share)</a></td>
<td class="nump">$ 0.50<span></span>
</td>
<td class="nump">$ 1.92<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="top.Show.showAR( this, 'defref_srt_RestatementAxis=srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember', window );">Revision of Prior Period, Error Correction, Adjustment [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="top.Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained Earnings (Accumulated Deficit), Ending Balance</a></td>
<td class="num">$ (291,000)<span></span>
</td>
<td class="num">$ (489,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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income Tax Expense (Benefit), Total</a></td>
<td class="nump">198,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="top.Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent', window );">Accrued Liabilities, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">198,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="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilities', window );">Deferred Tax Liabilities, Gross, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 279,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="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Earnings Per Share, Basic, Total (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (1)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Earnings Per Share, Diluted, Total (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (2)<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="top.Show.showAR( this, 'defref_srt_RestatementAxis=srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember', window );">Revision of Prior Period, Error Correction, Adjustment [Member] | Error Correction for Taxes Corrected in Retained Earnings [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="top.Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">Current State and Local Tax Expense (Benefit)</a></td>
<td class="nump">12,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="top.Show.showAR( this, 'defref_srt_RestatementAxis=srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember', window );">Revision of Prior Period, Error Correction, Adjustment [Member] | Error Correction for Taxes Corrected in Provision for Income Tax [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="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxExpenseFromStockOptionsExercised', window );">Deferred Tax Expense from Stock Options Exercised</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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">Current State and Local Tax Expense (Benefit)</a></td>
<td class="nump">$ 154,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.15(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03.15(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CurrentStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current state and local tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentStateAndLocalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(15)(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxExpenseFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax expense from write-off of the deferred tax asset related to deductible stock options at exercise.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxExpenseFromStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1448-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e4984-109258<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e3842-109258<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1252-109256<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e3842-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1252-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cumulative amount of the reporting entity's undistributed earnings or deficit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_srt_RestatementAxis=srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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_RestatementAxis=srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis=apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis=apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember</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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis=apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis=apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember</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>82
<FILENAME>apt20211231_10k_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/20211231"
  xmlns:country="http://xbrl.sec.gov/country/2021"
  xmlns:dei="http://xbrl.sec.gov/dei/2021q4"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2021-01-31"
  xmlns:thunderdome="http://www.RDGFilings.com"
  xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31"
  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-20211231.xsd" xlink:type="simple"/>
    <context id="d_2021-01-01_2021-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i_2021-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2021-06-30</instant>
        </period>
    </context>
    <context id="i_2022-03-04">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2022-03-04</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_2020-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="d_2020-01-01_2020-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i_2019-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>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-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>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-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>2019-12-31</instant>
        </period>
    </context>
    <context id="i_2019-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="d_2020-01-01_2020-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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i_2020-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>2020-12-31</instant>
        </period>
    </context>
    <context id="i_2020-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>2020-12-31</instant>
        </period>
    </context>
    <context id="d_2021-01-01_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>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_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>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_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>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </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_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="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-FurnitureAndFixturesMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-FurnitureAndFixturesMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-SoftwareDevelopmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_RangeAxis-MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-12-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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">apt:PatentsAndTrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i_2021-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">apt:PatentsAndTrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="d_2020-01-01_2020-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">apt:PatentsAndTrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i_2020-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">apt:PatentsAndTrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-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="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_2021-12-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>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2021-12-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>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2021-12-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>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2021-12-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>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2021-12-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>2021-12-31</instant>
        </period>
    </context>
    <context id="d_2021-01-01_2021-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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i_2021-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>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2020-05-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2020-05-31</instant>
        </period>
    </context>
    <context id="i_2021-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>2021-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="d_2021-01-01_2021-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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i_2021-12-31_PlanNameAxis-IncentivePlan2020Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:IncentivePlan2020Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="d_2020-06-10_2021-12-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>2020-06-10</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i_2021-12-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>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="d_2020-01-01_2020-12-31_TitleOfIndividualAxis-EmployeesAndDirectorsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">apt:EmployeesAndDirectorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_TitleOfIndividualAxis-EmployeesAndDirectorsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">apt:EmployeesAndDirectorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2019-01-01_2019-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_RetirementPlanTypeAxis-ForEmployeesContributing1PercentOfGrossEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">apt:ForEmployeesContributing1PercentOfGrossEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_RetirementPlanTypeAxis-ForEmployeesContributing2To12PercentOfGrossEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">apt:ForEmployeesContributing2To12PercentOfGrossEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i_2021-12-31_TitleOfIndividualAxis-PresidentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:PresidentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2020-12-31_TitleOfIndividualAxis-PresidentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:PresidentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="d_2021-01-01_2021-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>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-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>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-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>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-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>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-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>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-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>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-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>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-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>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i_2021-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>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2020-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>2020-12-31</instant>
        </period>
    </context>
    <context id="i_2021-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>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2020-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>2020-12-31</instant>
        </period>
    </context>
    <context id="i_2021-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>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2020-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>2020-12-31</instant>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_StatementGeographicalAxis-AU">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AU</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i_2021-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>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2020-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>2020-12-31</instant>
        </period>
    </context>
    <context id="i_2021-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>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2020-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>2020-12-31</instant>
        </period>
    </context>
    <context id="i_2021-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>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2020-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>2020-12-31</instant>
        </period>
    </context>
    <context id="i_2021-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>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2020-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>2020-12-31</instant>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerBMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerBMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerAMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerBMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerBMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerCMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">apt:CustomerCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_TitleOfIndividualAxis-OfficerMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:OfficerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">apt:ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i_2021-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis">apt:ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="d_2021-01-01_2021-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i_2020-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="d_2020-01-01_2020-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Share">
        <measure>shares</measure>
    </unit>
    <unit id="NonApplicable">
        <measure>thunderdome:item</measure>
    </unit>
    <unit id="USDPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="Year">
        <measure>utr:Y</measure>
    </unit>
    <unit id="Pure">
        <measure>pure</measure>
    </unit>
    <unit id="SquareFoot">
        <measure>utr:sqft</measure>
    </unit>
    <dei:EntityCentralIndexKey
      contextRef="d_2021-01-01_2021-12-31"
      id="thunderdome-EntityCentralIndexKey">0000884269</dei:EntityCentralIndexKey>
    <dei:EntityRegistrantName
      contextRef="d_2021-01-01_2021-12-31"
      id="thunderdome-EntityRegistrantName">ALPHA PRO TECH LTD</dei:EntityRegistrantName>
    <dei:AmendmentFlag contextRef="d_2021-01-01_2021-12-31">false</dei:AmendmentFlag>
    <dei:CurrentFiscalYearEndDate contextRef="d_2021-01-01_2021-12-31">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalPeriodFocus contextRef="d_2021-01-01_2021-12-31">FY</dei:DocumentFiscalPeriodFocus>
    <dei:DocumentFiscalYearFocus contextRef="d_2021-01-01_2021-12-31">2021</dei:DocumentFiscalYearFocus>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754396"
      unitRef="USD">64000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754397"
      unitRef="USD">71000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i_2021-12-31"
      id="c81754437"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i_2020-12-31"
      id="c81754438"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754442"
      unitRef="USDPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754443"
      unitRef="USDPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754444"
      unitRef="Share">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754445"
      unitRef="Share">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754446"
      unitRef="Share">13115341</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754447"
      unitRef="Share">13419847</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:AssetImpairmentCharges
      contextRef="d_2021-01-01_2021-12-31"
      decimals="-3"
      id="c81754655"
      unitRef="USD">0</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges
      contextRef="d_2020-01-01_2020-12-31"
      decimals="-3"
      id="c81754657"
      unitRef="USD">0</us-gaap:AssetImpairmentCharges>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i_2021-12-31"
      decimals="-3"
      id="c81754670"
      unitRef="USD">0</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:MarketableSecurities
      contextRef="i_2021-12-31"
      decimals="-3"
      id="c81754758"
      unitRef="USD">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i_2020-12-31"
      decimals="-3"
      id="c81754759"
      unitRef="USD">0</us-gaap:MarketableSecurities>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="d_2021-01-01_2021-12-31"
      decimals="-3"
      id="c81754799"
      unitRef="USD">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="d_2020-01-01_2020-12-31"
      decimals="-3"
      id="c81754800"
      unitRef="USD">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:NumberOfStores
      contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c81754820"
      unitRef="Pure">4</us-gaap:NumberOfStores>
    <apt:NumberOfStoresOwned
      contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c81754821"
      unitRef="Pure">3</apt:NumberOfStoresOwned>
    <apt:NumberOfStoresRented
      contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c81754822"
      unitRef="Pure">1</apt:NumberOfStoresRented>
    <us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment
      contextRef="d_2021-01-01_2021-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="-3"
      id="c81754837"
      unitRef="USD">0</us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment>
    <us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment
      contextRef="d_2020-01-01_2020-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="-3"
      id="c81754838"
      unitRef="USD">0</us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment>
    <us-gaap:LineOfCredit
      contextRef="i_2021-12-31"
      decimals="-3"
      id="c81754870"
      unitRef="USD">0</us-gaap:LineOfCredit>
    <us-gaap:LineOfCredit
      contextRef="i_2020-12-31"
      decimals="-3"
      id="c81754871"
      unitRef="USD">0</us-gaap:LineOfCredit>
    <us-gaap:OtherLongTermDebt
      contextRef="i_2021-12-31"
      decimals="-3"
      id="c81754872"
      unitRef="USD">0</us-gaap:OtherLongTermDebt>
    <us-gaap:OtherLongTermDebt
      contextRef="i_2020-12-31"
      decimals="-3"
      id="c81754873"
      unitRef="USD">0</us-gaap:OtherLongTermDebt>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="d_2021-01-01_2021-12-31_PlanNameAxis-The2004PlanMember"
      id="c81754889">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="d_2021-01-01_2021-12-31_PlanNameAxis-The2004PlanMember"
      id="c81754892">P5Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="d_2021-01-01_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"
      id="c81754910">P2021Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="d_2019-01-01_2019-12-31"
      decimals="-3"
      id="c81754919"
      unitRef="Pure">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:FinanceLeaseLiability
      contextRef="i_2021-12-31"
      decimals="-3"
      id="c81755009"
      unitRef="USD">0</us-gaap:FinanceLeaseLiability>
    <us-gaap:NumberOfOperatingSegments
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81755042"
      unitRef="Pure">2</us-gaap:NumberOfOperatingSegments>
    <apt:ConcentrationRiskThresholdPercentage
      contextRef="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="1"
      id="c81755103"
      unitRef="Pure">0.10</apt:ConcentrationRiskThresholdPercentage>
    <apt:ConcentrationRiskThresholdPercentage
      contextRef="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="1"
      id="c81755106"
      unitRef="Pure">0.10</apt:ConcentrationRiskThresholdPercentage>
    <apt:EmploymentAgreementTerm
      contextRef="d_2021-01-01_2021-12-31_TitleOfIndividualAxis-OfficerMember"
      id="c81755124">P5Y</apt:EmploymentAgreementTerm>
    <dei:DocumentType contextRef="d_2021-01-01_2021-12-31">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport contextRef="d_2021-01-01_2021-12-31">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate contextRef="d_2021-01-01_2021-12-31">2021-12-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport contextRef="d_2021-01-01_2021-12-31">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="d_2021-01-01_2021-12-31">001-15725</dei:EntityFileNumber>
    <dei:EntityIncorporationStateCountryCode contextRef="d_2021-01-01_2021-12-31">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="d_2021-01-01_2021-12-31">63-1009183</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="d_2021-01-01_2021-12-31">60 Centurian Drive, Suite 112</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="d_2021-01-01_2021-12-31">Markham</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="d_2021-01-01_2021-12-31">ON</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="d_2021-01-01_2021-12-31">L3R 9R2</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="d_2021-01-01_2021-12-31">905</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="d_2021-01-01_2021-12-31">479-0654</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="d_2021-01-01_2021-12-31">Common Stock, $0.01 par value</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="d_2021-01-01_2021-12-31">APT</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="d_2021-01-01_2021-12-31">NYSE</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer contextRef="d_2021-01-01_2021-12-31">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers contextRef="d_2021-01-01_2021-12-31">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus contextRef="d_2021-01-01_2021-12-31">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="d_2021-01-01_2021-12-31">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="d_2021-01-01_2021-12-31">Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="d_2021-01-01_2021-12-31">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="d_2021-01-01_2021-12-31">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag contextRef="d_2021-01-01_2021-12-31">true</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany contextRef="d_2021-01-01_2021-12-31">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat contextRef="i_2021-06-30" decimals="INF" unitRef="USD">101367511</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding contextRef="i_2022-03-04" decimals="INF" unitRef="Share">13139391</dei:EntityCommonStockSharesOutstanding>
    <dei:AuditorFirmId contextRef="d_2021-01-01_2021-12-31">270</dei:AuditorFirmId>
    <dei:AuditorName contextRef="d_2021-01-01_2021-12-31">Tanner LLC</dei:AuditorName>
    <dei:AuditorLocation contextRef="d_2021-01-01_2021-12-31">Lehi, Utah</dei:AuditorLocation>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754392"
      unitRef="USD">16307000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754393"
      unitRef="USD">23292000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754394"
      unitRef="USD">3397000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754395"
      unitRef="USD">8132000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableRelatedPartiesCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754398"
      unitRef="USD">1383000</us-gaap:AccountsReceivableRelatedPartiesCurrent>
    <us-gaap:AccountsReceivableRelatedPartiesCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754399"
      unitRef="USD">905000</us-gaap:AccountsReceivableRelatedPartiesCurrent>
    <us-gaap:InventoryNet
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754400"
      unitRef="USD">24969000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754401"
      unitRef="USD">16749000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754402"
      unitRef="USD">6943000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754403"
      unitRef="USD">6087000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754404"
      unitRef="USD">52999000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754405"
      unitRef="USD">55165000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754406"
      unitRef="USD">6064000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754407"
      unitRef="USD">4353000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Goodwill
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754408"
      unitRef="USD">55000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754409"
      unitRef="USD">55000</us-gaap:Goodwill>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754410"
      unitRef="USD">3000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754411"
      unitRef="USD">7000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754412"
      unitRef="USD">2648000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754413"
      unitRef="USD">3535000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754414"
      unitRef="USD">6120000</us-gaap:InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures>
    <us-gaap:InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754415"
      unitRef="USD">5549000</us-gaap:InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures>
    <us-gaap:Assets
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754416"
      unitRef="USD">67889000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754417"
      unitRef="USD">68664000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754420"
      unitRef="USD">528000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754421"
      unitRef="USD">1983000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754422"
      unitRef="USD">1250000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754423"
      unitRef="USD">2793000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754424"
      unitRef="USD">0</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754425"
      unitRef="USD">209000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754426"
      unitRef="USD">883000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754427"
      unitRef="USD">867000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754428"
      unitRef="USD">2661000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754429"
      unitRef="USD">5852000</us-gaap:LiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754430"
      unitRef="USD">1817000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754431"
      unitRef="USD">2719000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754432"
      unitRef="USD">791000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754433"
      unitRef="USD">563000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:Liabilities
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754434"
      unitRef="USD">5269000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754435"
      unitRef="USD">9134000</us-gaap:Liabilities>
    <us-gaap:CommonStockValue
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754440"
      unitRef="USD">132000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754441"
      unitRef="USD">135000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754448"
      unitRef="USD">0</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754449"
      unitRef="USD">409000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754450"
      unitRef="USD">62488000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754451"
      unitRef="USD">58986000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754452"
      unitRef="USD">62620000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754453"
      unitRef="USD">59530000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754454"
      unitRef="USD">67889000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754455"
      unitRef="USD">68664000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754456"
      unitRef="USD">68637000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754457"
      unitRef="USD">102700000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754458"
      unitRef="USD">43339000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754459"
      unitRef="USD">52218000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754460"
      unitRef="USD">25298000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754461"
      unitRef="USD">50482000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754463"
      unitRef="USD">16554000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754464"
      unitRef="USD">18171000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754465"
      unitRef="USD">817000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754466"
      unitRef="USD">729000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:OperatingExpenses
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754467"
      unitRef="USD">17371000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754468"
      unitRef="USD">18900000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754469"
      unitRef="USD">7927000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754470"
      unitRef="USD">31582000</us-gaap:OperatingIncomeLoss>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754472"
      unitRef="USD">571000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754473"
      unitRef="USD">710000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:DebtSecuritiesAvailableForSaleGainLoss
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754474"
      unitRef="USD">0</us-gaap:DebtSecuritiesAvailableForSaleGainLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleGainLoss
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754475"
      unitRef="USD">-62000</us-gaap:DebtSecuritiesAvailableForSaleGainLoss>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754476"
      unitRef="USD">2000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754477"
      unitRef="USD">18000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754478"
      unitRef="USD">573000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754479"
      unitRef="USD">666000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossAttributableToParent
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754480"
      unitRef="USD">8500000</us-gaap:IncomeLossAttributableToParent>
    <us-gaap:IncomeLossAttributableToParent
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754481"
      unitRef="USD">32248000</us-gaap:IncomeLossAttributableToParent>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754482"
      unitRef="USD">1744000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754483"
      unitRef="USD">5360000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754484"
      unitRef="USD">6756000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754485"
      unitRef="USD">26888000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754486"
      unitRef="USDPerShare">0.51</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754487"
      unitRef="USDPerShare">2.00</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754488"
      unitRef="USDPerShare">0.50</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754489"
      unitRef="USDPerShare">1.92</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754490"
      unitRef="Share">13225628</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754491"
      unitRef="Share">13449987</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754492"
      unitRef="Share">13499442</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754493"
      unitRef="Share">13972145</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754504"
      unitRef="Share">12885273</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754505"
      unitRef="USD">129000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="INF"
      id="c81754506"
      unitRef="USD">708000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2019-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="INF"
      id="c81754507"
      unitRef="USD">32098000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c81754508"
      unitRef="USD">32935000</us-gaap:StockholdersEquity>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754509"
      unitRef="Share">223100</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754510"
      unitRef="USD">2000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="INF"
      id="c81754511"
      unitRef="USD">2664000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="INF"
      id="c81754512"
      unitRef="USD">-0</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754513"
      unitRef="USD">2666000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754514"
      unitRef="Share">757674</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754515"
      unitRef="USD">8000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="INF"
      id="c81754516"
      unitRef="USD">1990000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754518"
      unitRef="USD">1998000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754520"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="INF"
      id="c81754521"
      unitRef="USD">375000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="INF"
      id="c81754522"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754523"
      unitRef="USD">375000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss
      contextRef="d_2020-01-01_2020-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="INF"
      id="c81754527"
      unitRef="USD">26888000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754528"
      unitRef="USD">26888000</us-gaap:NetIncomeLoss>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2020-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754529"
      unitRef="Share">13419847</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2020-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754530"
      unitRef="USD">135000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2020-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="INF"
      id="c81754532"
      unitRef="USD">58986000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754533"
      unitRef="USD">59530000</us-gaap:StockholdersEquity>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754534"
      unitRef="Share">439000</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754535"
      unitRef="USD">4000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="INF"
      id="c81754536"
      unitRef="USD">1150000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="INF"
      id="c81754537"
      unitRef="USD">3254000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754538"
      unitRef="USD">4408000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754539"
      unitRef="Share">134494</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="INF"
      id="c81754541"
      unitRef="USD">426000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754543"
      unitRef="USD">427000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754545"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="INF"
      id="c81754546"
      unitRef="USD">315000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="INF"
      id="c81754547"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754548"
      unitRef="USD">315000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-01-01_2021-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="INF"
      id="c81754552"
      unitRef="USD">6756000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754553"
      unitRef="USD">6756000</us-gaap:NetIncomeLoss>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754554"
      unitRef="Share">13115341</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c81754555"
      unitRef="USD">132000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="INF"
      id="c81754557"
      unitRef="USD">62488000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754558"
      unitRef="USD">62620000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754560"
      unitRef="USD">6756000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754561"
      unitRef="USD">26888000</us-gaap:NetIncomeLoss>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754563"
      unitRef="USD">315000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754564"
      unitRef="USD">375000</us-gaap:ShareBasedCompensation>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754565"
      unitRef="USD">817000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754566"
      unitRef="USD">729000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DebtSecuritiesAvailableForSaleGainLoss
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754567"
      unitRef="USD">-0</us-gaap:DebtSecuritiesAvailableForSaleGainLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleGainLoss
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754568"
      unitRef="USD">-62000</us-gaap:DebtSecuritiesAvailableForSaleGainLoss>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754569"
      unitRef="USD">571000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754570"
      unitRef="USD">710000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <apt:OperatingLeaseExpenseNetOfAccretion
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754571"
      unitRef="USD">887000</apt:OperatingLeaseExpenseNetOfAccretion>
    <apt:OperatingLeaseExpenseNetOfAccretion
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754572"
      unitRef="USD">-357000</apt:OperatingLeaseExpenseNetOfAccretion>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754573"
      unitRef="USD">228000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754574"
      unitRef="USD">47000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754576"
      unitRef="USD">-4735000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754577"
      unitRef="USD">4564000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInDueFromRelatedParties
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754578"
      unitRef="USD">478000</us-gaap:IncreaseDecreaseInDueFromRelatedParties>
    <us-gaap:IncreaseDecreaseInDueFromRelatedParties
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754579"
      unitRef="USD">181000</us-gaap:IncreaseDecreaseInDueFromRelatedParties>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754580"
      unitRef="USD">8220000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754581"
      unitRef="USD">5446000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754582"
      unitRef="USD">856000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754583"
      unitRef="USD">2500000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754584"
      unitRef="USD">-2998000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754585"
      unitRef="USD">3355000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754586"
      unitRef="USD">-209000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754587"
      unitRef="USD">209000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754588"
      unitRef="USD">-886000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754589"
      unitRef="USD">367000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754590"
      unitRef="USD">-480000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754591"
      unitRef="USD">18274000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754593"
      unitRef="USD">2524000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754594"
      unitRef="USD">1135000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfAvailableForSaleSecuritiesDebt
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754595"
      unitRef="USD">0</us-gaap:ProceedsFromSaleOfAvailableForSaleSecuritiesDebt>
    <us-gaap:ProceedsFromSaleOfAvailableForSaleSecuritiesDebt
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754596"
      unitRef="USD">273000</us-gaap:ProceedsFromSaleOfAvailableForSaleSecuritiesDebt>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754597"
      unitRef="USD">-2524000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754598"
      unitRef="USD">-862000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <apt:ProceedsFromPaymentsForStockOptionsExercised
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754600"
      unitRef="USD">427000</apt:ProceedsFromPaymentsForStockOptionsExercised>
    <apt:ProceedsFromPaymentsForStockOptionsExercised
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754601"
      unitRef="USD">1998000</apt:ProceedsFromPaymentsForStockOptionsExercised>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754602"
      unitRef="USD">4408000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754603"
      unitRef="USD">2666000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754604"
      unitRef="USD">-3981000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754605"
      unitRef="USD">-668000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754606"
      unitRef="USD">-6985000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754607"
      unitRef="USD">16744000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754608"
      unitRef="USD">23292000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c81754609"
      unitRef="USD">6548000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754610"
      unitRef="USD">16307000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754611"
      unitRef="USD">23292000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:IncomeTaxesPaid
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754613"
      unitRef="USD">1824000</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754614"
      unitRef="USD">4136000</us-gaap:IncomeTaxesPaid>
    <us-gaap:NatureOfOperations contextRef="d_2021-01-01_2021-12-31" id="c2054714">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;1.&lt;/em&gt;&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: Times New Roman; font-size: 10pt;"&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: &amp;quot;Times New Roman&amp;quot;; 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;US&#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;The ongoing&#160;novel coronavirus (COVID-&lt;em style="font: inherit;"&gt;19&lt;/em&gt;) pandemic has adversely affected global economies, financial markets and the overall environment in which we do business. Overall, the increase in sales of our Disposable Protective Apparel segment products resulting from the pandemic has had a positive impact on our year-to-date results, but the positive impact in &lt;em style="font: inherit;"&gt;2021&lt;/em&gt; is less than in &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; as the effects of COVID-&lt;em style="font: inherit;"&gt;19&lt;/em&gt; are normalizing. The extent of the pandemic&#x2019;s effect on our future operational and financial performance will depend in large part on future developments, which cannot be predicted with confidence at this time. Future developments include the duration, scope and severity of the pandemic and new variants, including the Omicron variant, 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 and rapidly evolving situation, we are unable to predict with any certainty the likely impact of the&#160;COVID-&lt;em style="font: inherit;"&gt;19&lt;/em&gt; pandemic on our future operations.&lt;/p&gt;
  </us-gaap:NatureOfOperations>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054715">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;2.&lt;/em&gt;&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: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;Summary of Significant Accounting Policies&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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Principles of Consolidation&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;"&gt;The consolidated financial statements of the Company include the accounts of the Company and its wholly-owned subsidiaries, Alpha Pro Tech, Inc. and Alpha ProTech Engineered Products, Inc. All significant intercompany accounts and transactions have been eliminated in consolidation.&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;Events that occurred after &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;through the date on which these financial statements were filed with the Securities and Exchange Commission (&#x201c;SEC&#x201d;) were considered in the preparation of these financial statements.&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;
   &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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Use of Estimates&lt;/b&gt;&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 preparation of financial statements in conformity with U.S. generally accepted accounting principles (&#x201c;U.S. GAAP&#x201d;) requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and the disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses for the reporting period. Actual results could differ from these estimates.&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;margin:0pt;"/&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Periods Presented&lt;/b&gt;&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;All amounts have been rounded to the nearest thousand with the exception of the per share data. The Company qualified as a smaller reporting company at the measurement date for determining such qualification during &lt;em style="font: inherit;"&gt;2021.&lt;/em&gt; According to the disclosure requirements for smaller reporting companies, the Company has included balance sheets as of the end of the &lt;em style="font: inherit;"&gt;two&lt;/em&gt; most recent years and statements of income, comprehensive income, shareholders&#x2019; equity and cash flows for each of the &lt;em style="font: inherit;"&gt;two&lt;/em&gt; most recent years.&lt;/p&gt; &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt;


   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Cash and Cash Equivalents&lt;/b&gt;&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 considers all highly liquid investments purchased with an original maturity of &lt;em style="font: inherit;"&gt;three&lt;/em&gt; months or less to be cash equivalents.&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;
   &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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Investments&lt;/b&gt;&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;&#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;Investments are classified as available-for-sale in accordance with U.S. GAAP. The Company does &lt;em style="font: inherit;"&gt;not&lt;/em&gt; have any investments in securities that are classified as held-to-maturity or trading. Available-for-sale investments are carried at their fair values using quoted prices in active markets for identical securities, with realized and unrealized gains and losses reported in net income. The cost of securities sold is based on the specific identification method. Investments that the Company intends to hold for more than &lt;em style="font: inherit;"&gt;one&lt;/em&gt; year are classified as long-term investments in the accompanying consolidated balance sheets.&#160;&#160;&#160;&#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;
   &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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Accounts Receivable&lt;/b&gt;&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;Accounts receivable are recorded at the invoice amount and do &lt;em style="font: inherit;"&gt;not&lt;/em&gt; bear interest.&#160; The allowance for doubtful accounts is the Company&#x2019;s best estimate of the amount of probable credit losses in the Company&#x2019;s existing accounts receivable; however, changes in circumstances relating to accounts receivable &lt;em style="font: inherit;"&gt; may &lt;/em&gt;result in a requirement for additional allowances in the future.&#160; The Company determines the allowance based upon historical write-off experience and known conditions about its customers&#x2019; current ability to pay.&#160; Account balances are charged against the allowance when management determines that the probability for collection is remote.&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;
   &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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Inventories&lt;/b&gt;&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;Inventories include freight-in, materials, labor and overhead costs and are stated at the lower of cost or net realizable value. Allowances are recorded for slow-moving, obsolete or unusable inventories. The Company assesses inventories for estimated obsolescence or unmarketable products and writes down the difference between the cost of the inventories and the estimated net realizable values based upon assumptions about future sales and supplies on-hand.&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;
   &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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Property and Equipment&lt;/b&gt;&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;Property and equipment are stated at cost less accumulated depreciation and amortization. Costs to develop internal use software are charged to expense as incurred until the preliminary project stage has been completed and application development begins. The Company discontinues capitalization upon entering the post-implementation stage and expenses ongoing maintenance and support costs. Property and equipment are depreciated or amortized using the straight-line method over the shorter of the respective useful lives of the assets or the related lease terms 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 cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; width: 80%; margin-left: 22pt; margin-right: auto;"&gt;&lt;tbody&gt;&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;&lt;td style="width: 85%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;Buildings (in years)&lt;/td&gt;&lt;td style="width: 5%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font: inherit;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;&lt;td style="width: 5%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;25&lt;/td&gt;&lt;td style="width: 5%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font: inherit;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 85%;"&gt;Machinery and equipment (in years)&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;"&gt;5&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"&gt;&lt;em style="font: inherit;"&gt;-&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;15&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 85%;"&gt;Office furniture and equipment (in years)&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;"&gt;2&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"&gt;&lt;em style="font: inherit;"&gt;-&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;7&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 85%;"&gt;Leasehold improvements (in years)&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;"&gt;4&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"&gt;&lt;em style="font: inherit;"&gt;-&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;5&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 85%;"&gt;Software (in years)&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;&lt;em style="font: inherit;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"&gt;5&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;&lt;em style="font: inherit;"&gt;&#160;&lt;/em&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 0pt 0pt 21pt;"&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;Expenditures for renewals and betterments are capitalized, whereas costs of maintenance and repairs are charged to operations in the period incurred.&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;
   &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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Goodwill and Intangible Assets&lt;/b&gt;&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 accounts for goodwill and definite-lived intangible assets in accordance with Financial Accounting Standards Board (&#x201c;FASB&#x201d;) Accounting Standards Codification (&#x201c;ASC&#x201d;) &lt;em style="font: inherit;"&gt;350,&lt;/em&gt; Intangibles &#x2013; Goodwill and Other. Goodwill is &lt;em style="font: inherit;"&gt;not&lt;/em&gt; amortized, but rather is tested annually for impairment. Intangible assets with finite lives are amortized over their useful lives (see Note &lt;em style="font: inherit;"&gt;6&lt;/em&gt;). The Company&#x2019;s patents and trademarks are recorded at cost and are amortized using the straight-line method over their estimated useful lives of 5-17 years.&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;
   &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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Fair Value of Financial Instruments&lt;/b&gt;&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 estimated fair values of financial instruments are determined based on relevant market information and cannot be determined with precision. The Company&#x2019;s financial instruments consist primarily of cash, cash equivalents and marketable securities.&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;&#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 marketable securities are classified as available-for-sale and are carried at fair market value based on quoted market prices.&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;
   &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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Impairment of Long-Lived Assets&lt;/b&gt;&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 reviews long-lived assets for impairment whenever events or changes in its business circumstances indicate that the carrying amounts of the assets &lt;em style="font: inherit;"&gt; may &lt;/em&gt;&lt;em style="font: inherit;"&gt;not&lt;/em&gt; be fully recoverable. If it is determined that the undiscounted future net cash flows are &lt;em style="font: inherit;"&gt;not&lt;/em&gt; sufficient to recover the carrying values of the assets, an impairment loss is recognized for the excess of the carrying values over the fair values of the assets. The Company believes that the future undiscounted net cash flows to be received from its long-lived assets exceed the assets&#x2019; carrying values and, accordingly, the Company has &lt;span style="-sec-ix-hidden:c81754655"&gt;&lt;span style="-sec-ix-hidden:c81754657"&gt;not&lt;/span&gt;&lt;/span&gt; recognized any impairment losses for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020.&lt;/em&gt;&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;&lt;em style="font: inherit;"/&gt;&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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Revenue Recognition&lt;/b&gt;&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;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 &lt;em style="font: inherit;"&gt;third&lt;/em&gt; 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 &lt;em style="font: inherit;"&gt;not&lt;/em&gt; 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 &lt;em style="font: inherit;"&gt;third&lt;/em&gt; 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 &lt;em style="font: inherit;"&gt;not&lt;/em&gt; pass to the customer at the time of manufacture, based upon the nature of the private labelling. The Company has determined as of &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;that it had &lt;em style="font: inherit;"&gt;no&lt;/em&gt; material contract assets, and concluded that its contract liabilities (primarily rebates) had the right of offset against customer receivables. As of &lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;we had &lt;em style="font: inherit;"&gt;&lt;span style="-sec-ix-hidden:c81754670"&gt;no&lt;/span&gt;&lt;/em&gt; contract liabilities as compared to $209,000 as of &lt;em style="font: inherit;"&gt; December 31, 2020, &lt;/em&gt;as a result of customer advance payments of orders in connection with the COVID-&lt;em style="font: inherit;"&gt;19&lt;/em&gt; pandemic. See Note &lt;em style="font: inherit;"&gt;15&lt;/em&gt; and Note &lt;em style="font: inherit;"&gt;16&lt;/em&gt; of these Notes to Consolidated Financial Statements 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; text-align: justify; margin: 0pt 0pt 0pt 21pt;"/&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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Shipping and Handling Costs&lt;/b&gt;&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 costs of shipping products to distributors are recorded in cost of goods sold.&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;
   &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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Stock-Based Compensation&lt;/b&gt;&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 maintains a stock option plan under which the Company &lt;em style="font: inherit;"&gt; may &lt;/em&gt;grant incentive stock options and non-qualified stock options to employees and non-employee directors. 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.&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 accounts for share-based awards in accordance with ASC &lt;em style="font: inherit;"&gt;718,&lt;/em&gt; Stock Compensation. ASC &lt;em style="font: inherit;"&gt;718&lt;/em&gt; requires companies to record compensation expense for the value of all outstanding and unvested share-based awards, including employee stock options.&lt;/p&gt; &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;"&gt;For the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; there were &lt;em style="font: inherit;"&gt;no&lt;/em&gt; stock options granted under the Company&#x2019;s stock option plan. The Company recognized $185,000 and $375,000 in share-based compensation expense for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; respectively, related to outstanding options.&#160; For the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; 15,140 and 8,912 restricted stock equity awards were granted under the &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; Incentive Plan respectively and the compensation expense associated with these awards was $131,000 and $6,000 in &lt;em style="font: inherit;"&gt;2021&lt;/em&gt; and &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; respectively.&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;margin:0pt;"/&gt;


   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Income Taxes&lt;/b&gt;&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 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 &lt;em style="font: inherit;"&gt;not&lt;/em&gt; 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 &lt;em style="font: inherit;"&gt;not&lt;/em&gt; that the position will &lt;em style="font: inherit;"&gt;not&lt;/em&gt; 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 21pt;"&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. &#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;
   &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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Earnings Per Common Share&lt;/b&gt;&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 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 potential common shares, and &#x201c;diluted&#x201d; EPS, which includes all potential common shares which are dilutive for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020.&lt;/em&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

     &lt;table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px; margin-left: 22pt;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 18%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;Years Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="width: 66%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td colspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; 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: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;6,756,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;26,888,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="width: 66%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td colspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Shares (denominator):&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 14%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 14%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Basic weighted average common shares outstanding&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,225,628&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,449,987&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Add: Dilutive effect of common stock options&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;273,814&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;522,158&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="width: 66%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Diluted weighted average common shares outstanding&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;13,499,442&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;13,972,145&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="width: 66%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td colspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Earnings per common share:&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 14%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 14%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Basic&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.51&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;2.00&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Diluted&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.50&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;1.92&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
     &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Translation of Foreign Currencies&lt;/b&gt;&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;Transactions in foreign currencies are translated into U.S. dollars at the exchange rate prevailing at the transaction date. Monetary assets and liabilities in foreign currencies at each period end are translated at the exchange rate in effect at that date. Transaction gains or losses on foreign currencies are reflected in selling, general and administrative expenses and were &lt;em style="font: inherit;"&gt;not&lt;/em&gt; material for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020.&lt;/em&gt;&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 does &lt;em style="font: inherit;"&gt;not&lt;/em&gt; have a material foreign currency exposure due to the fact that all purchase agreements with companies in Asia and Mexico are in U.S. dollars. In addition, all sales transactions are in U.S. dollars. The Company&#x2019;s only foreign currency exposure is with its Canadian branch office. The foreign currency exposure is &lt;em style="font: inherit;"&gt;not&lt;/em&gt; material due to the fact that the Company does &lt;em style="font: inherit;"&gt;not&lt;/em&gt; manufacture products in Canada. The exposure primarily relates to payroll expenses in the Company&#x2019;s administrative branch office in Canada.&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;
   &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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Research and Development Costs&lt;/b&gt;&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;&#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;Research and development costs are expensed as incurred and are included in selling, general and administrative expenses. Such costs were &lt;em style="font: inherit;"&gt;not&lt;/em&gt; material for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020.&lt;/em&gt;&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;&lt;em style="font: inherit;"/&gt;&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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Advertising Costs&lt;/b&gt;&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 expenses advertising and promotional costs as incurred. These costs are included in selling, general and administrative expenses and were $27,000 and $32,000 for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; respectively.&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;
   &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; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Loss Contingencies&lt;/b&gt;&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 outcomes of legal proceedings and claims brought against the Company are subject to uncertainty. An estimated loss from a loss contingency such as a legal proceeding or claim is accrued if it is probable that an asset has been impaired or a liability has been incurred and the amount of the loss can be reasonably estimated. In determining whether a loss should be accrued, we evaluate, among other factors, the degree of probability of an unfavorable outcome and the ability to make a reasonable estimate of the amount of loss.&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;margin:0pt;"/&gt;attestation&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Fair Value Measurements&lt;/b&gt;&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;ASC &lt;em style="font: inherit;"&gt;820,&lt;/em&gt; Fair Value Measurements and Disclosures, establishes a framework for measuring fair value in accordance with U.S. GAAP, clarifies the definition of fair value within that framework and expands disclosures about the use of fair value measurements. On a quarterly basis, the Company measures at fair value certain financial assets using a hierarchy of valuation techniques based on whether the inputs to those valuation techniques are observable or unobservable. Observable inputs reflect market data obtained from independent sources, while unobservable inputs reflect the Company&#x2019;s own assumptions. The following fair value hierarchy prioritizes the inputs into &lt;em style="font: inherit;"&gt;three&lt;/em&gt; broad levels.&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;This hierarchy requires the Company to minimize the use of unobservable inputs and to use observable market data, if available, when determining fair value. There were &lt;em style="font: inherit;"&gt;no&lt;/em&gt; fair values of the Company&#x2019;s financial assets as of &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020.&lt;/em&gt;&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;&lt;em style="font: inherit;"/&gt;&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;&#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; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Reclassifications&lt;/b&gt;&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;Certain reclassifications have been made to the prior years&#x2019; consolidated financial statements to conform to current year presentation. Certain financial information is presented on a rounded basis, which &lt;em style="font: inherit;"&gt; may &lt;/em&gt;cause minor differences.&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;
   &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;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;New Accounting Standards&lt;/b&gt;&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;In &lt;em style="font: inherit;"&gt; June 2016, &lt;/em&gt;the Financial Accounting Standards Board (&#x201c;FASB&#x201d;) issued Accounting Standards Update (&#x201c;ASU&#x201d;) &lt;em style="font: inherit;"&gt;2016&lt;/em&gt;-&lt;em style="font: inherit;"&gt;13&lt;/em&gt; Financial Instruments - Credit Losses (Topic &lt;em style="font: inherit;"&gt;326&lt;/em&gt;): Measurement of Credit Losses on Financial Instruments. ASU &lt;em style="font: inherit;"&gt;2016&lt;/em&gt;-&lt;em style="font: inherit;"&gt;13&lt;/em&gt; requires an organization to measure all expected credit losses for financial assets held at the reporting date based on historical experience, current conditions and reasonable and supportable forecasts. ASU &lt;em style="font: inherit;"&gt;2016&lt;/em&gt;-&lt;em style="font: inherit;"&gt;13&lt;/em&gt; is effective for public companies for the annual periods, including interim periods within those annual periods, beginning after &lt;em style="font: inherit;"&gt; December 15, 2019. &lt;/em&gt;This guidance was applicable to the Company&#x2019;s fiscal year beginning &lt;em style="font: inherit;"&gt; January 1, 2020. &lt;/em&gt;Adoption of the new standard did &lt;em style="font: inherit;"&gt;not&lt;/em&gt; have a material impact on our 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 21pt;"&gt;In &lt;em style="font: inherit;"&gt; December 2019, &lt;/em&gt;the FASB issued ASU &lt;em style="font: inherit;"&gt;No.&lt;/em&gt; &lt;em style="font: inherit;"&gt;2019&lt;/em&gt;-&lt;em style="font: inherit;"&gt;12,&lt;/em&gt; Income Taxes (Topic &lt;em style="font: inherit;"&gt;740&lt;/em&gt;): Simplifying the Accounting for Income Taxes, which is intended to simplify various aspects related to accounting for income taxes. ASU &lt;em style="font: inherit;"&gt;2019&lt;/em&gt;-&lt;em style="font: inherit;"&gt;12&lt;/em&gt; removes certain exceptions to the general principles in Topic &lt;em style="font: inherit;"&gt;740&lt;/em&gt; and also clarifies and amends existing guidance to improve consistent application. This guidance is effective for fiscal years, and interim periods within those fiscal years, beginning after &lt;em style="font: inherit;"&gt; December 15, 2020, &lt;/em&gt;with early adoption permitted. Adoption of the new standard did &lt;em style="font: inherit;"&gt;not&lt;/em&gt; have a material impact on our 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 21pt;"&gt;Management periodically reviews new accounting standards that are issued. Management has &lt;em style="font: inherit;"&gt;not&lt;/em&gt; identified any other new standards that it believes merit further discussion at this time.&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;
  </us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:ConsolidationPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757161">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Principles of Consolidation&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;"&gt;The consolidated financial statements of the Company include the accounts of the Company and its wholly-owned subsidiaries, Alpha Pro Tech, Inc. and Alpha ProTech Engineered Products, Inc. All significant intercompany accounts and transactions have been eliminated in consolidation.&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;Events that occurred after &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;through the date on which these financial statements were filed with the Securities and Exchange Commission (&#x201c;SEC&#x201d;) were considered in the preparation of these financial statements.&lt;/p&gt;</us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:UseOfEstimates contextRef="d_2021-01-01_2021-12-31" id="c81757162">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Use of Estimates&lt;/b&gt;&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 preparation of financial statements in conformity with U.S. generally accepted accounting principles (&#x201c;U.S. GAAP&#x201d;) requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and the disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses for the reporting period. Actual results could differ from these estimates.&lt;/p&gt; &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;</us-gaap:UseOfEstimates>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757163">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Periods Presented&lt;/b&gt;&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;All amounts have been rounded to the nearest thousand with the exception of the per share data. The Company qualified as a smaller reporting company at the measurement date for determining such qualification during &lt;em style="font: inherit;"&gt;2021.&lt;/em&gt; According to the disclosure requirements for smaller reporting companies, the Company has included balance sheets as of the end of the &lt;em style="font: inherit;"&gt;two&lt;/em&gt; most recent years and statements of income, comprehensive income, shareholders&#x2019; equity and cash flows for each of the &lt;em style="font: inherit;"&gt;two&lt;/em&gt; most recent 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;</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757164">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Cash and Cash Equivalents&lt;/b&gt;&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 considers all highly liquid investments purchased with an original maturity of &lt;em style="font: inherit;"&gt;three&lt;/em&gt; months or less to be cash equivalents.&lt;/p&gt;</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:MarketableSecuritiesPolicy contextRef="d_2021-01-01_2021-12-31" id="c81757165">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Investments&lt;/b&gt;&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;&#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;Investments are classified as available-for-sale in accordance with U.S. GAAP. The Company does &lt;em style="font: inherit;"&gt;not&lt;/em&gt; have any investments in securities that are classified as held-to-maturity or trading. Available-for-sale investments are carried at their fair values using quoted prices in active markets for identical securities, with realized and unrealized gains and losses reported in net income. The cost of securities sold is based on the specific identification method. Investments that the Company intends to hold for more than &lt;em style="font: inherit;"&gt;one&lt;/em&gt; year are classified as long-term investments in the accompanying consolidated balance sheets.&#160;&#160;&#160;&#160;&lt;/p&gt;</us-gaap:MarketableSecuritiesPolicy>
    <us-gaap:ReceivablesPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757185">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Accounts Receivable&lt;/b&gt;&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;Accounts receivable are recorded at the invoice amount and do &lt;em style="font: inherit;"&gt;not&lt;/em&gt; bear interest.&#160; The allowance for doubtful accounts is the Company&#x2019;s best estimate of the amount of probable credit losses in the Company&#x2019;s existing accounts receivable; however, changes in circumstances relating to accounts receivable &lt;em style="font: inherit;"&gt; may &lt;/em&gt;result in a requirement for additional allowances in the future.&#160; The Company determines the allowance based upon historical write-off experience and known conditions about its customers&#x2019; current ability to pay.&#160; Account balances are charged against the allowance when management determines that the probability for collection is remote.&lt;/p&gt;</us-gaap:ReceivablesPolicyTextBlock>
    <us-gaap:InventoryPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757186">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Inventories&lt;/b&gt;&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;Inventories include freight-in, materials, labor and overhead costs and are stated at the lower of cost or net realizable value. Allowances are recorded for slow-moving, obsolete or unusable inventories. The Company assesses inventories for estimated obsolescence or unmarketable products and writes down the difference between the cost of the inventories and the estimated net realizable values based upon assumptions about future sales and supplies on-hand.&lt;/p&gt;</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757166">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Property and Equipment&lt;/b&gt;&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;Property and equipment are stated at cost less accumulated depreciation and amortization. Costs to develop internal use software are charged to expense as incurred until the preliminary project stage has been completed and application development begins. The Company discontinues capitalization upon entering the post-implementation stage and expenses ongoing maintenance and support costs. Property and equipment are depreciated or amortized using the straight-line method over the shorter of the respective useful lives of the assets or the related lease terms 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 cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; width: 80%; margin-left: 22pt; margin-right: auto;"&gt;&lt;tbody&gt;&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;&lt;td style="width: 85%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;Buildings (in years)&lt;/td&gt;&lt;td style="width: 5%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font: inherit;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;&lt;td style="width: 5%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;25&lt;/td&gt;&lt;td style="width: 5%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font: inherit;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 85%;"&gt;Machinery and equipment (in years)&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;"&gt;5&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"&gt;&lt;em style="font: inherit;"&gt;-&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;15&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 85%;"&gt;Office furniture and equipment (in years)&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;"&gt;2&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"&gt;&lt;em style="font: inherit;"&gt;-&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;7&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 85%;"&gt;Leasehold improvements (in years)&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;"&gt;4&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"&gt;&lt;em style="font: inherit;"&gt;-&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;5&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 85%;"&gt;Software (in years)&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;&lt;em style="font: inherit;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"&gt;5&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;&lt;em style="font: inherit;"&gt;&#160;&lt;/em&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 0pt 0pt 21pt;"&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;Expenditures for renewals and betterments are capitalized, whereas costs of maintenance and repairs are charged to operations in the period incurred.&lt;/p&gt;</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <apt:PropertyPlantAndEquipmentUsefulLivesTableTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054716">
     &lt;table cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; width: 80%; margin-left: 22pt; margin-right: auto;"&gt;&lt;tbody&gt;&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;&lt;td style="width: 85%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;Buildings (in years)&lt;/td&gt;&lt;td style="width: 5%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font: inherit;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;&lt;td style="width: 5%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; text-align: center;"&gt;25&lt;/td&gt;&lt;td style="width: 5%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;em style="font: inherit;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 85%;"&gt;Machinery and equipment (in years)&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;"&gt;5&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"&gt;&lt;em style="font: inherit;"&gt;-&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;15&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 85%;"&gt;Office furniture and equipment (in years)&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;"&gt;2&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"&gt;&lt;em style="font: inherit;"&gt;-&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;7&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 85%;"&gt;Leasehold improvements (in years)&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: right;"&gt;4&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"&gt;&lt;em style="font: inherit;"&gt;-&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;5&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 85%;"&gt;Software (in years)&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;&lt;em style="font: inherit;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%; text-align: center;"&gt;5&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 5%;"&gt;&lt;em style="font: inherit;"&gt;&#160;&lt;/em&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
    </apt:PropertyPlantAndEquipmentUsefulLivesTableTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingMember"
      id="c81754728">P25Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MinimumMember"
      id="c81754730">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-MachineryAndEquipmentMember_RangeAxis-MaximumMember"
      id="c81754732">P15Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-FurnitureAndFixturesMember_RangeAxis-MinimumMember"
      id="c81754733">P2Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-FurnitureAndFixturesMember_RangeAxis-MaximumMember"
      id="c81754735">P7Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MinimumMember"
      id="c81754736">P4Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-LeaseholdImprovementsMember_RangeAxis-MaximumMember"
      id="c81754738">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-SoftwareDevelopmentMember"
      id="c81754740">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy contextRef="d_2021-01-01_2021-12-31" id="c81757167">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Goodwill and Intangible Assets&lt;/b&gt;&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 accounts for goodwill and definite-lived intangible assets in accordance with Financial Accounting Standards Board (&#x201c;FASB&#x201d;) Accounting Standards Codification (&#x201c;ASC&#x201d;) &lt;em style="font: inherit;"&gt;350,&lt;/em&gt; Intangibles &#x2013; Goodwill and Other. Goodwill is &lt;em style="font: inherit;"&gt;not&lt;/em&gt; amortized, but rather is tested annually for impairment. Intangible assets with finite lives are amortized over their useful lives (see Note &lt;em style="font: inherit;"&gt;6&lt;/em&gt;). The Company&#x2019;s patents and trademarks are recorded at cost and are amortized using the straight-line method over their estimated useful lives of 5-17 years.&lt;/p&gt;</us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="d_2021-01-01_2021-12-31_RangeAxis-MinimumMember"
      id="c81754645">P5Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="d_2021-01-01_2021-12-31_RangeAxis-MaximumMember"
      id="c81754647">P17Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy contextRef="d_2021-01-01_2021-12-31" id="c81757168">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Fair Value of Financial Instruments&lt;/b&gt;&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 estimated fair values of financial instruments are determined based on relevant market information and cannot be determined with precision. The Company&#x2019;s financial instruments consist primarily of cash, cash equivalents and marketable securities.&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;&#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 marketable securities are classified as available-for-sale and are carried at fair market value based on quoted market prices.&lt;/p&gt;</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757169">&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Impairment of Long-Lived Assets&lt;/b&gt;&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 reviews long-lived assets for impairment whenever events or changes in its business circumstances indicate that the carrying amounts of the assets &lt;em style="font: inherit;"&gt; may &lt;/em&gt;&lt;em style="font: inherit;"&gt;not&lt;/em&gt; be fully recoverable. If it is determined that the undiscounted future net cash flows are &lt;em style="font: inherit;"&gt;not&lt;/em&gt; sufficient to recover the carrying values of the assets, an impairment loss is recognized for the excess of the carrying values over the fair values of the assets. The Company believes that the future undiscounted net cash flows to be received from its long-lived assets exceed the assets&#x2019; carrying values and, accordingly, the Company has &lt;span style="-sec-ix-hidden:c81754655"&gt;&lt;span style="-sec-ix-hidden:c81754657"&gt;not&lt;/span&gt;&lt;/span&gt; recognized any impairment losses for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020.&lt;/em&gt;&lt;/p&gt;</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:RevenueRecognitionPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757170">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Revenue Recognition&lt;/b&gt;&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;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 &lt;em style="font: inherit;"&gt;third&lt;/em&gt; 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 &lt;em style="font: inherit;"&gt;not&lt;/em&gt; 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 &lt;em style="font: inherit;"&gt;third&lt;/em&gt; 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 &lt;em style="font: inherit;"&gt;not&lt;/em&gt; pass to the customer at the time of manufacture, based upon the nature of the private labelling. The Company has determined as of &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;that it had &lt;em style="font: inherit;"&gt;no&lt;/em&gt; material contract assets, and concluded that its contract liabilities (primarily rebates) had the right of offset against customer receivables. As of &lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;we had &lt;em style="font: inherit;"&gt;&lt;span style="-sec-ix-hidden:c81754670"&gt;no&lt;/span&gt;&lt;/em&gt; contract liabilities as compared to $209,000 as of &lt;em style="font: inherit;"&gt; December 31, 2020, &lt;/em&gt;as a result of customer advance payments of orders in connection with the COVID-&lt;em style="font: inherit;"&gt;19&lt;/em&gt; pandemic. See Note &lt;em style="font: inherit;"&gt;15&lt;/em&gt; and Note &lt;em style="font: inherit;"&gt;16&lt;/em&gt; of these Notes to Consolidated Financial Statements for information on revenue disaggregated by type and by geographic region.&lt;/p&gt;</us-gaap:RevenueRecognitionPolicyTextBlock>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754671"
      unitRef="USD">209000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <apt:RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757171">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Shipping and Handling Costs&lt;/b&gt;&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 costs of shipping products to distributors are recorded in cost of goods sold.&lt;/p&gt;</apt:RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy contextRef="d_2021-01-01_2021-12-31" id="c81757175">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Stock-Based Compensation&lt;/b&gt;&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 maintains a stock option plan under which the Company &lt;em style="font: inherit;"&gt; may &lt;/em&gt;grant incentive stock options and non-qualified stock options to employees and non-employee directors. 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.&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 accounts for share-based awards in accordance with ASC &lt;em style="font: inherit;"&gt;718,&lt;/em&gt; Stock Compensation. ASC &lt;em style="font: inherit;"&gt;718&lt;/em&gt; requires companies to record compensation expense for the value of all outstanding and unvested share-based awards, including employee stock options.&lt;/p&gt; &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;"&gt;For the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; there were &lt;em style="font: inherit;"&gt;no&lt;/em&gt; stock options granted under the Company&#x2019;s stock option plan. The Company recognized $185,000 and $375,000 in share-based compensation expense for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; respectively, related to outstanding options.&#160; For the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; 15,140 and 8,912 restricted stock equity awards were granted under the &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; Incentive Plan respectively and the compensation expense associated with these awards was $131,000 and $6,000 in &lt;em style="font: inherit;"&gt;2021&lt;/em&gt; and &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; respectively.&lt;/p&gt; &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754679"
      unitRef="USD">185000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754680"
      unitRef="USD">375000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="d_2021-01-01_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c81754683"
      unitRef="Share">15140</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="d_2020-01-01_2020-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c81754684"
      unitRef="Share">8912</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2021-01-01_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c81754686"
      unitRef="USD">131000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2020-01-01_2020-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c81754687"
      unitRef="USD">6000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:IncomeTaxPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757176">&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Income Taxes&lt;/b&gt;&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 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 &lt;em style="font: inherit;"&gt;not&lt;/em&gt; 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 &lt;em style="font: inherit;"&gt;not&lt;/em&gt; that the position will &lt;em style="font: inherit;"&gt;not&lt;/em&gt; 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 21pt;"&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. &#160;&lt;/p&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:EarningsPerSharePolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757179">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Earnings Per Common Share&lt;/b&gt;&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 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 potential common shares, and &#x201c;diluted&#x201d; EPS, which includes all potential common shares which are dilutive for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020.&lt;/em&gt;&lt;/p&gt; &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

     &lt;table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px; margin-left: 22pt;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 18%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;Years Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="width: 66%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td colspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; 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: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;6,756,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;26,888,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="width: 66%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td colspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Shares (denominator):&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 14%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 14%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Basic weighted average common shares outstanding&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,225,628&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,449,987&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Add: Dilutive effect of common stock options&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;273,814&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;522,158&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="width: 66%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Diluted weighted average common shares outstanding&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;13,499,442&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;13,972,145&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="width: 66%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td colspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Earnings per common share:&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 14%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 14%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Basic&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.51&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;2.00&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Diluted&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.50&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;1.92&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
     &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054717">
     &lt;table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px; margin-left: 22pt;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 18%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;Years Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="width: 66%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td colspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; 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: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;6,756,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;26,888,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="width: 66%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td colspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Shares (denominator):&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 14%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 14%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Basic weighted average common shares outstanding&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,225,628&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;13,449,987&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Add: Dilutive effect of common stock options&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;273,814&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;522,158&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="width: 66%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Diluted weighted average common shares outstanding&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;13,499,442&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;13,972,145&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="width: 66%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td colspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Earnings per common share:&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 14%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 14%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Basic&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.51&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;2.00&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Diluted&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.50&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;1.92&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
    </us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754742"
      unitRef="USD">6756000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754743"
      unitRef="USD">26888000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754745"
      unitRef="Share">13225628</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754746"
      unitRef="Share">13449987</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754747"
      unitRef="Share">273814</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754748"
      unitRef="Share">522158</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754749"
      unitRef="Share">13499442</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754750"
      unitRef="Share">13972145</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754752"
      unitRef="USDPerShare">0.51</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754753"
      unitRef="USDPerShare">2.00</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754754"
      unitRef="USDPerShare">0.50</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754755"
      unitRef="USDPerShare">1.92</us-gaap:EarningsPerShareDiluted>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757181">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Translation of Foreign Currencies&lt;/b&gt;&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;Transactions in foreign currencies are translated into U.S. dollars at the exchange rate prevailing at the transaction date. Monetary assets and liabilities in foreign currencies at each period end are translated at the exchange rate in effect at that date. Transaction gains or losses on foreign currencies are reflected in selling, general and administrative expenses and were &lt;em style="font: inherit;"&gt;not&lt;/em&gt; material for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020.&lt;/em&gt;&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 does &lt;em style="font: inherit;"&gt;not&lt;/em&gt; have a material foreign currency exposure due to the fact that all purchase agreements with companies in Asia and Mexico are in U.S. dollars. In addition, all sales transactions are in U.S. dollars. The Company&#x2019;s only foreign currency exposure is with its Canadian branch office. The foreign currency exposure is &lt;em style="font: inherit;"&gt;not&lt;/em&gt; material due to the fact that the Company does &lt;em style="font: inherit;"&gt;not&lt;/em&gt; manufacture products in Canada. The exposure primarily relates to payroll expenses in the Company&#x2019;s administrative branch office in Canada.&lt;/p&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:ResearchAndDevelopmentExpensePolicy contextRef="d_2021-01-01_2021-12-31" id="c81757187">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Research and Development Costs&lt;/b&gt;&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;&#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;Research and development costs are expensed as incurred and are included in selling, general and administrative expenses. Such costs were &lt;em style="font: inherit;"&gt;not&lt;/em&gt; material for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020.&lt;/em&gt;&lt;/p&gt;</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:AdvertisingCostsPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757188">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Advertising Costs&lt;/b&gt;&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 expenses advertising and promotional costs as incurred. These costs are included in selling, general and administrative expenses and were $27,000 and $32,000 for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; respectively.&lt;/p&gt;</us-gaap:AdvertisingCostsPolicyTextBlock>
    <us-gaap:AdvertisingExpense
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754702"
      unitRef="USD">27000</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754703"
      unitRef="USD">32000</us-gaap:AdvertisingExpense>
    <us-gaap:CommitmentsAndContingenciesPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757189">&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Loss Contingencies&lt;/b&gt;&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 outcomes of legal proceedings and claims brought against the Company are subject to uncertainty. An estimated loss from a loss contingency such as a legal proceeding or claim is accrued if it is probable that an asset has been impaired or a liability has been incurred and the amount of the loss can be reasonably estimated. In determining whether a loss should be accrued, we evaluate, among other factors, the degree of probability of an unfavorable outcome and the ability to make a reasonable estimate of the amount of loss.&lt;/p&gt; &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;</us-gaap:CommitmentsAndContingenciesPolicyTextBlock>
    <us-gaap:FairValueMeasurementPolicyPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757190">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt;attestation&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Fair Value Measurements&lt;/b&gt;&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;ASC &lt;em style="font: inherit;"&gt;820,&lt;/em&gt; Fair Value Measurements and Disclosures, establishes a framework for measuring fair value in accordance with U.S. GAAP, clarifies the definition of fair value within that framework and expands disclosures about the use of fair value measurements. On a quarterly basis, the Company measures at fair value certain financial assets using a hierarchy of valuation techniques based on whether the inputs to those valuation techniques are observable or unobservable. Observable inputs reflect market data obtained from independent sources, while unobservable inputs reflect the Company&#x2019;s own assumptions. The following fair value hierarchy prioritizes the inputs into &lt;em style="font: inherit;"&gt;three&lt;/em&gt; broad levels.&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;This hierarchy requires the Company to minimize the use of unobservable inputs and to use observable market data, if available, when determining fair value. There were &lt;em style="font: inherit;"&gt;no&lt;/em&gt; fair values of the Company&#x2019;s financial assets as of &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020.&lt;/em&gt;&lt;/p&gt;</us-gaap:FairValueMeasurementPolicyPolicyTextBlock>
    <us-gaap:PriorPeriodReclassificationAdjustmentDescription contextRef="d_2021-01-01_2021-12-31" id="c81757247">&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;Reclassifications&lt;/b&gt;&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;Certain reclassifications have been made to the prior years&#x2019; consolidated financial statements to conform to current year presentation. Certain financial information is presented on a rounded basis, which &lt;em style="font: inherit;"&gt; may &lt;/em&gt;cause minor differences.&lt;/p&gt;</us-gaap:PriorPeriodReclassificationAdjustmentDescription>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="d_2021-01-01_2021-12-31" id="c81757248">&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;&lt;b&gt;New Accounting Standards&lt;/b&gt;&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;In &lt;em style="font: inherit;"&gt; June 2016, &lt;/em&gt;the Financial Accounting Standards Board (&#x201c;FASB&#x201d;) issued Accounting Standards Update (&#x201c;ASU&#x201d;) &lt;em style="font: inherit;"&gt;2016&lt;/em&gt;-&lt;em style="font: inherit;"&gt;13&lt;/em&gt; Financial Instruments - Credit Losses (Topic &lt;em style="font: inherit;"&gt;326&lt;/em&gt;): Measurement of Credit Losses on Financial Instruments. ASU &lt;em style="font: inherit;"&gt;2016&lt;/em&gt;-&lt;em style="font: inherit;"&gt;13&lt;/em&gt; requires an organization to measure all expected credit losses for financial assets held at the reporting date based on historical experience, current conditions and reasonable and supportable forecasts. ASU &lt;em style="font: inherit;"&gt;2016&lt;/em&gt;-&lt;em style="font: inherit;"&gt;13&lt;/em&gt; is effective for public companies for the annual periods, including interim periods within those annual periods, beginning after &lt;em style="font: inherit;"&gt; December 15, 2019. &lt;/em&gt;This guidance was applicable to the Company&#x2019;s fiscal year beginning &lt;em style="font: inherit;"&gt; January 1, 2020. &lt;/em&gt;Adoption of the new standard did &lt;em style="font: inherit;"&gt;not&lt;/em&gt; have a material impact on our 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 21pt;"&gt;In &lt;em style="font: inherit;"&gt; December 2019, &lt;/em&gt;the FASB issued ASU &lt;em style="font: inherit;"&gt;No.&lt;/em&gt; &lt;em style="font: inherit;"&gt;2019&lt;/em&gt;-&lt;em style="font: inherit;"&gt;12,&lt;/em&gt; Income Taxes (Topic &lt;em style="font: inherit;"&gt;740&lt;/em&gt;): Simplifying the Accounting for Income Taxes, which is intended to simplify various aspects related to accounting for income taxes. ASU &lt;em style="font: inherit;"&gt;2019&lt;/em&gt;-&lt;em style="font: inherit;"&gt;12&lt;/em&gt; removes certain exceptions to the general principles in Topic &lt;em style="font: inherit;"&gt;740&lt;/em&gt; and also clarifies and amends existing guidance to improve consistent application. This guidance is effective for fiscal years, and interim periods within those fiscal years, beginning after &lt;em style="font: inherit;"&gt; December 15, 2020, &lt;/em&gt;with early adoption permitted. Adoption of the new standard did &lt;em style="font: inherit;"&gt;not&lt;/em&gt; have a material impact on our 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 21pt;"&gt;Management periodically reviews new accounting standards that are issued. Management has &lt;em style="font: inherit;"&gt;not&lt;/em&gt; identified any other new standards that it believes merit further discussion at this time.&lt;/p&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054718">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;3.&lt;/em&gt;&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: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;Investments&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;"&gt;As of &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; &lt;span style="-sec-ix-hidden:c81754758"&gt;&lt;span style="-sec-ix-hidden:c81754759"&gt;no&lt;/span&gt;&lt;/span&gt; marketable securities investments were owned.&#160; No marketable securities were sold during the year ended &lt;em style="font: inherit;"&gt; December 31, 2021. &lt;/em&gt;Certain marketable securities were sold during the year ended &lt;em style="font: inherit;"&gt; December 31, 2020, &lt;/em&gt;for a net realized &#160;loss of $62,000.&#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;&#160;&lt;/p&gt;


   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
  </us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock>
    <us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities
      contextRef="d_2021-01-01_2021-12-31"
      decimals="-3"
      id="c81754760"
      unitRef="USD">0</us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities>
    <us-gaap:MarketableSecuritiesGainLoss
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754761"
      unitRef="USD">-62000</us-gaap:MarketableSecuritiesGainLoss>
    <us-gaap:InventoryDisclosureTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054719">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;4.&lt;/em&gt;&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: Times New Roman; font-size: 10pt;"&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 21pt;"&gt;Inventories 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: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Raw materials&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;13,545,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;9,729,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Work in process&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3,890,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2,003,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Finished goods&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;7,534,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;5,017,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;"&gt;Total inventory&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;24,969,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;16,749,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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_2021-01-01_2021-12-31" id="c2054720">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 18pt; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Raw materials&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;13,545,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;9,729,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Work in process&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3,890,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2,003,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Finished goods&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;7,534,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;5,017,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 27pt;"&gt;Total inventory&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;24,969,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;16,749,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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_2021-12-31"
      decimals="INF"
      id="c81754769"
      unitRef="USD">13545000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754770"
      unitRef="USD">9729000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754771"
      unitRef="USD">3890000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754772"
      unitRef="USD">2003000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754773"
      unitRef="USD">7534000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754774"
      unitRef="USD">5017000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754775"
      unitRef="USD">24969000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754776"
      unitRef="USD">16749000</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054721">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;5.&lt;/em&gt;&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: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;Property and Equipment&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;Property and equipment consisted of the following:&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 18pt; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31,&lt;/b&gt; &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 68%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Buildings&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;493,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;493,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Machinery and equipment&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;15,273,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;13,039,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Office furniture and equipment&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2,177,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2,076,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Leasehold improvements&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;553,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;517,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Software&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;3,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;3,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;18,499,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;16,128,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Less accumulated depreciation and amortization&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(12,435,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(11,775,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/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(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total net property and equipment&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;6,064,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;4,353,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;

   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;"&gt;Depreciation and amortization expense for property and equipment was $813,000 and $725,000 for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; respectively.&lt;/p&gt;
  </us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054722">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 18pt; width: 95%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31,&lt;/b&gt; &lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 68%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Buildings&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;493,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;493,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Machinery and equipment&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;15,273,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;13,039,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Office furniture and equipment&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2,177,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2,076,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Leasehold improvements&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;553,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;517,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Software&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;3,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;3,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;18,499,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;16,128,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Less accumulated depreciation and amortization&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(12,435,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(11,775,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/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(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total net property and equipment&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;6,064,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;4,353,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754781"
      unitRef="USD">493000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754782"
      unitRef="USD">493000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754783"
      unitRef="USD">15273000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754784"
      unitRef="USD">13039000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:FurnitureAndFixturesGross
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754785"
      unitRef="USD">2177000</us-gaap:FurnitureAndFixturesGross>
    <us-gaap:FurnitureAndFixturesGross
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754786"
      unitRef="USD">2076000</us-gaap:FurnitureAndFixturesGross>
    <us-gaap:LeaseholdImprovementsGross
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754787"
      unitRef="USD">553000</us-gaap:LeaseholdImprovementsGross>
    <us-gaap:LeaseholdImprovementsGross
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754788"
      unitRef="USD">517000</us-gaap:LeaseholdImprovementsGross>
    <us-gaap:CapitalizedComputerSoftwareGross
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754789"
      unitRef="USD">3000</us-gaap:CapitalizedComputerSoftwareGross>
    <us-gaap:CapitalizedComputerSoftwareGross
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754790"
      unitRef="USD">3000</us-gaap:CapitalizedComputerSoftwareGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754791"
      unitRef="USD">18499000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754792"
      unitRef="USD">16128000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754793"
      unitRef="USD">12435000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754794"
      unitRef="USD">11775000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754795"
      unitRef="USD">6064000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754796"
      unitRef="USD">4353000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:DepreciationAndAmortization
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754778"
      unitRef="USD">813000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754779"
      unitRef="USD">725000</us-gaap:DepreciationAndAmortization>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054723">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;6.&lt;/em&gt;&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: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;Goodwill and Intangible Assets&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;Management evaluates goodwill for impairment on an annual basis (&lt;em style="font: inherit;"&gt;fourth&lt;/em&gt; quarter), and &lt;span style="-sec-ix-hidden:c81754799"&gt;&lt;span style="-sec-ix-hidden:c81754800"&gt;no&lt;/span&gt;&lt;/span&gt; impairment charge was identified for the years presented.&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;Definite-lived intangible assets, consisting of patents and trademarks, are amortized over their useful lives. Intangible assets 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="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="14" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31, 2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="14" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31, 2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Weighted &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Average&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Amortization &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Period (Years)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Gross &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Carrying&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Amount&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Accumulated Amortization&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Net &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Carrying&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Amount&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Weighted&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Average&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Amortization &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Period &lt;/b&gt;&lt;/b&gt;&lt;/p&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;(Years)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Gross&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Carrying &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Amount&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Accumulated Amortization&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Net &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Carrying &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Amount&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 20%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Patents and Trademarks&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;2.0&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;474,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(471,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;3,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;3.0&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;474,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(467,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;7,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 23pt;"&gt;Amortization expense for intangible assets was $4,000 and $4,000 for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; respectively.&lt;b&gt; &lt;/b&gt;&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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 23pt;"&gt;Estimated future amortization expense related to definite-lived intangible assets is 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;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 23pt;"&gt;&lt;b&gt;&lt;span style="text-decoration: underline; "&gt;Years ending &lt;em style="font: inherit;"&gt; December 31,&lt;/em&gt;&lt;/span&gt;&lt;/b&gt;&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;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: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td colspan="2" style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;2022&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 17.4%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;2023&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; width: 63.6%;"&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;`&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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 colspan="2" style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;3,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054724">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="14" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31, 2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="14" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31, 2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Weighted &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Average&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Amortization &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Period (Years)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Gross &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Carrying&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Amount&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Accumulated Amortization&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Net &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Carrying&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Amount&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Weighted&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Average&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Amortization &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Period &lt;/b&gt;&lt;/b&gt;&lt;/p&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;(Years)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Gross&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Carrying &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Amount&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Accumulated Amortization&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Net &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Carrying &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Amount&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 20%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Patents and Trademarks&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;2.0&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;474,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(471,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;3,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;3.0&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;474,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(467,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 7%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;7,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="d_2021-01-01_2021-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember"
      id="c81754805">P2Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2021-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember"
      decimals="INF"
      id="c81754806"
      unitRef="USD">474000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2021-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember"
      decimals="INF"
      id="c81754807"
      unitRef="USD">471000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2021-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember"
      decimals="INF"
      id="c81754808"
      unitRef="USD">3000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="d_2020-01-01_2020-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember"
      id="c81754809">P3Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i_2020-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember"
      decimals="INF"
      id="c81754810"
      unitRef="USD">474000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i_2020-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember"
      decimals="INF"
      id="c81754811"
      unitRef="USD">467000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2020-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember"
      decimals="INF"
      id="c81754812"
      unitRef="USD">7000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754801"
      unitRef="USD">4000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754802"
      unitRef="USD">4000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054725">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td colspan="2" style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;2022&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 17.4%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;2023&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; width: 63.6%;"&gt; &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;`&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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 colspan="2" style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Total&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;3,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754813"
      unitRef="USD">2000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754814"
      unitRef="USD">1000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754815"
      unitRef="USD">3000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:EquityMethodInvestmentsDisclosureTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054726">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;7.&lt;/em&gt;&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: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;Equity Investments 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 &lt;em style="font: inherit;"&gt;2005,&lt;/em&gt; 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 loan 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:c81754820"&gt;four&lt;/span&gt; facilities in India (&lt;span style="-sec-ix-hidden:c81754821"&gt;three&lt;/span&gt; owned and &lt;span style="-sec-ix-hidden:c81754822"&gt;one&lt;/span&gt; rented), consisting of: (&lt;em style="font: inherit;"&gt;1&lt;/em&gt;) a 113,000 square foot building for manufacturing building products; (&lt;em style="font: inherit;"&gt;2&lt;/em&gt;) a 73,000 square foot building for manufacturing coated material and sewing proprietary disposable protective apparel; (&lt;em style="font: inherit;"&gt;3&lt;/em&gt;) a 16,000 square foot facility for sewing proprietary disposable protective apparel; and (&lt;em style="font: inherit;"&gt;4&lt;/em&gt;) a 93,000 square foot facility (rented) for manufacturing Building Supply segment products. All additions have been financed by Harmony with &lt;em style="font: inherit;"&gt;no&lt;/em&gt; 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;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;In accordance with ASC &lt;em style="font: inherit;"&gt;810,&lt;/em&gt; Consolidation, the Company assesses whether or &lt;em style="font: inherit;"&gt;not&lt;/em&gt; related entities are variable interest entities (&#x201c;VIEs&#x201d;). For those related entities that qualify as VIEs, ASC &lt;em style="font: inherit;"&gt;810&lt;/em&gt; requires the Company to determine whether or &lt;em style="font: inherit;"&gt;not&lt;/em&gt; the Company is the primary beneficiary of the VIE, and, if so, to consolidate the VIE. The Company has determined that Harmony is &lt;em style="font: inherit;"&gt;not&lt;/em&gt; 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:c81754837"&gt;&lt;span style="-sec-ix-hidden:c81754838"&gt;no&lt;/span&gt;&lt;/span&gt; impairment was required as of &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;or &lt;em style="font: inherit;"&gt; December 31, 2020.&lt;/em&gt;&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 years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; the Company purchased $26,252,000 and $18,623,000 of inventories, respectively, from Harmony. For the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; the Company recorded equity in income of unconsolidated affiliate of $571,000 and $710,000, respectively. For the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; the Company sold $1,931,000 and $1,087,000 of inventories, respectively, to Harmony.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;As of &lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;the Company&#x2019;s investment in Harmony was $6,120,000, which consisted of its original $1,450,000 investment and cumulative equity in income of unconsolidated affiliate of $5,689,000, less $942,000 in repayments of an advance and payments of $77,000 in dividends.&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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
  </us-gaap:EquityMethodInvestmentsDisclosureTextBlock>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="i_2005-12-31_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis-AlphaProTechEngineeredProductsMember_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="4"
      id="c81754818"
      unitRef="Pure">0.4166</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="i_2005-12-31_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis-MapleIndustriesAndAssociatesMember_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="4"
      id="c81754819"
      unitRef="Pure">0.5834</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingBuildingProductsMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c81754824"
      unitRef="SquareFoot">113000</us-gaap:AreaOfRealEstateProperty>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c81754826"
      unitRef="SquareFoot">73000</us-gaap:AreaOfRealEstateProperty>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-SewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c81754828"
      unitRef="SquareFoot">16000</us-gaap:AreaOfRealEstateProperty>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2021-12-31_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingOfBuildingProductsMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c81754830"
      unitRef="SquareFoot">93000</us-gaap:AreaOfRealEstateProperty>
    <apt:ExpenseToAcquireInventory
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754840"
      unitRef="USD">26252000</apt:ExpenseToAcquireInventory>
    <apt:ExpenseToAcquireInventory
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754841"
      unitRef="USD">18623000</apt:ExpenseToAcquireInventory>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754843"
      unitRef="USD">571000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754844"
      unitRef="USD">710000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:ProceedsFromSaleOfProductiveAssets
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754846"
      unitRef="USD">1931000</us-gaap:ProceedsFromSaleOfProductiveAssets>
    <us-gaap:ProceedsFromSaleOfProductiveAssets
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754847"
      unitRef="USD">1087000</us-gaap:ProceedsFromSaleOfProductiveAssets>
    <us-gaap:EquityMethodInvestments
      contextRef="i_2021-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="INF"
      id="c81754848"
      unitRef="USD">6120000</us-gaap:EquityMethodInvestments>
    <us-gaap:EquityMethodInvestmentAggregateCost
      contextRef="i_2021-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="INF"
      id="c81754849"
      unitRef="USD">1450000</us-gaap:EquityMethodInvestmentAggregateCost>
    <apt:CumulativeEquityInIncomeOfUnconsolidatedAffiliate
      contextRef="i_2021-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="INF"
      id="c81754850"
      unitRef="USD">5689000</apt:CumulativeEquityInIncomeOfUnconsolidatedAffiliate>
    <us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital
      contextRef="d_2021-01-01_2021-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="INF"
      id="c81754851"
      unitRef="USD">942000</us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital>
    <us-gaap:EquityMethodInvestmentDividendsOrDistributions
      contextRef="d_2021-01-01_2021-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="INF"
      id="c81754852"
      unitRef="USD">77000</us-gaap:EquityMethodInvestmentDividendsOrDistributions>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054727">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;8.&lt;/em&gt;&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: Times New Roman; 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 21pt;"&gt;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: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Payroll expenses and tax payable&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;187,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;123,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Commission and bonuses payable and general accrued liabilities&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,063,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,670,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total accrued liabilities&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;1,250,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;2,793,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;"&gt;Contract liabilities were $2,238,000 and $2,263,000 as of &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; respectively, which are netted against the related accounts receivable due to the legal right of offset.&lt;/p&gt;
  </us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054728">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 18pt; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Payroll expenses and tax payable&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;187,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;123,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Commission and bonuses payable and general accrued liabilities&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,063,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,670,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total accrued liabilities&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;1,250,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;2,793,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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_2021-12-31"
      decimals="INF"
      id="c81754860"
      unitRef="USD">187000</us-gaap:AccruedSalariesCurrent>
    <us-gaap:AccruedSalariesCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754861"
      unitRef="USD">123000</us-gaap:AccruedSalariesCurrent>
    <us-gaap:AccruedBonusesCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754862"
      unitRef="USD">1063000</us-gaap:AccruedBonusesCurrent>
    <us-gaap:AccruedBonusesCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754863"
      unitRef="USD">2670000</us-gaap:AccruedBonusesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754864"
      unitRef="USD">1250000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754865"
      unitRef="USD">2793000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754857"
      unitRef="USD">2238000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754858"
      unitRef="USD">2263000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:DebtDisclosureTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054729">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;9.&lt;/em&gt;&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: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;Notes Payable&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 maintained a $3,500,000 credit facility with Wells Fargo Bank, which expired in &lt;em style="font: inherit;"&gt; May 2020, &lt;/em&gt;and which the Company decided &lt;em style="font: inherit;"&gt;not&lt;/em&gt; to renew. The Company has continued its relationship with Wells Fargo, with the exception of the credit facility. As of &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; the Company had &lt;span style="-sec-ix-hidden:c81754870"&gt;&lt;span style="-sec-ix-hidden:c81754871"&gt;no&lt;/span&gt;&lt;/span&gt; outstanding borrowings and &lt;span style="-sec-ix-hidden:c81754872"&gt;&lt;span style="-sec-ix-hidden:c81754873"&gt;no&lt;/span&gt;&lt;/span&gt; other debt.&lt;/p&gt;
  </us-gaap:DebtDisclosureTextBlock>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i_2020-05-31"
      decimals="INF"
      id="c81754867"
      unitRef="USD">3500000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054730">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;10.&lt;/em&gt;&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: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;Shareholders&lt;/b&gt;&#x2019;&lt;b&gt; Equity&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;text-indent:21pt;"&gt;&lt;b&gt;Repurchase Program&lt;/b&gt;&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 20pt;text-indent:1pt;"&gt;During the year ended &lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;the Company repurchased and retired 439,000 shares of its common stock for $4,408,000. During the year ended &lt;em style="font: inherit;"&gt; December 31, 2020, &lt;/em&gt;the Company repurchased and retired 223,100 shares of its common stock for $2,666,000. As of &lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;the Company had $2,078,000 available to repurchase common shares under the repurchase program.&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;text-indent:21pt;"&gt;&lt;b&gt;Option Activity&lt;/b&gt;&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 &lt;em style="font: inherit;"&gt;2004&lt;/em&gt; Stock Option Plan (the &lt;em style="font: inherit;"&gt;&#x201c;2004&lt;/em&gt; Plan&#x201d;) is an equity compensation plan that provides for grants of stock options to eligible individuals.&#160; The &lt;em style="font: inherit;"&gt;2004&lt;/em&gt; Plan is intended to recognize the contributions made to the Company by key employees of the Company, provide key employees with additional incentive to devote themselves to the future success of the Company and improve the ability of the Company to attract, retain and motivate individuals.&#160; The &lt;em style="font: inherit;"&gt;2004&lt;/em&gt; Plan also is intended as an incentive to certain members of the Board of Directors of the Company to continue to serve on the Board of Directors and to devote themselves to the future success of 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;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;The &lt;em style="font: inherit;"&gt;2004&lt;/em&gt; Plan provides for a total of 5,000,000 common shares eligible for issuance. Under the &lt;em style="font: inherit;"&gt;2004&lt;/em&gt; Plan, approximately 5,009,750 options had been granted as of &lt;em style="font: inherit;"&gt; December 31, 2020. &lt;/em&gt;Under the &lt;em style="font: inherit;"&gt;2004&lt;/em&gt; Plan, option grants have a &lt;span style="-sec-ix-hidden:c81754889"&gt;three&lt;/span&gt;-year vesting period and, since &lt;em style="font: inherit;"&gt;2005,&lt;/em&gt; expire &lt;em style="font: inherit;"&gt;no&lt;/em&gt; later than the &lt;span style="-sec-ix-hidden:c81754892"&gt;fifth&lt;/span&gt; anniversary from the date of grant. The exercise price of the options is determined based on the fair market value of the stock on the date of grant.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;"&gt;At the Company&#x2019;s &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; Annual Meeting of Shareholders held on &lt;em style="font: inherit;"&gt; June 9, 2020, &lt;/em&gt;the Company&#x2019;s shareholders approved the Alpha Pro Tech, Ltd. &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; Omnibus Incentive Plan (the &lt;em style="font: inherit;"&gt;&#x201c;2020&lt;/em&gt; Incentive Plan&#x201d;).&#160; The &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; 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.&#160; A total of 1,800,000 shares of the Company&#x2019;s common stock are reserved for issuance under the &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; Incentive Plan, plus the number of shares underlying any award granted under the &lt;em style="font: inherit;"&gt;2004&lt;/em&gt; Option Plan that expires, terminates or is cancelled or forfeited under the terms of the &lt;em style="font: inherit;"&gt;2004&lt;/em&gt; Option Plan.&#160; As a result of the approval of the &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; Incentive Plan, &lt;em style="font: inherit;"&gt;no&lt;/em&gt; future equity awards will be made pursuant to the &lt;em style="font: inherit;"&gt;2004&lt;/em&gt; Option Plan. Although &lt;em style="font: inherit;"&gt;no&lt;/em&gt; new awards &lt;em style="font: inherit;"&gt; may &lt;/em&gt;be granted under the &lt;em style="font: inherit;"&gt;2004&lt;/em&gt; Option Plan, all previously granted awards under the &lt;em style="font: inherit;"&gt;2004&lt;/em&gt; Option Plan will continue to be governed by the terms of the &lt;em style="font: inherit;"&gt;2004&lt;/em&gt; Option Plan. As of &lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;24,052 restricted stock equity awards had been granted under the &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; Incentive Plan, the total for &lt;span style="-sec-ix-hidden:c81754910"&gt;2021&lt;/span&gt; compensation expense of these awards is $131,000. As of &lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;$79,000 of total unrecognized compensation cost related to the restricted stock grants was expected to be recognized over a weighted-average remainder period of 0.73 years.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&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 following table summarizes option activity for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020:&lt;/em&gt;&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: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Weighted&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Average&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Exercise Price&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Shares&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Per Option&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Options outstanding, December 31, 2019&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;1,326,414&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2.86&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Granted to employees and directors&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Exercised&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(757,674&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2.64&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Canceled/expired/forfeited&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Options outstanding, December 31, 2020&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;568,740&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.42&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Granted to employees and directors&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Exercised&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(134,494&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.17&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Canceled/expired/forfeited&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(6,666&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.62&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Options outstanding, December 31, 2021&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;427,580&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.50&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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 style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Options exercisable, December 31, 2021&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;315,583&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.47&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;"&gt;Stock options to purchase 427,580 and 568,740 shares of common stock were outstanding as of &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; respectively.&#160;All of the stock options were included in the computation of the weighted-average number of dilutive common shares outstanding for the year ended &lt;em style="font: inherit;"&gt; December 31, 2021. &lt;/em&gt;All of the stock options, were included in the computation of the weighted-average number of dilutive common shares outstanding for the year ended &lt;em style="font: inherit;"&gt; December 31, 2021.&lt;/em&gt;&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 20pt;"&gt;The Company used the Black-Scholes option-pricing model to value the options. The Company uses historical data to estimate the expected term of the options. The risk-free interest rate for periods consistent with the expected term of the award is based on the U.S. Treasury rates in effect at the time of grant. The expected volatility is based on historical volatility. The Company uses an estimated dividend payout ratio of zero, as the Company has &lt;span style="-sec-ix-hidden:c81754919"&gt;not&lt;/span&gt; paid dividends in the past and, at this time, does &lt;em style="font: inherit;"&gt;not&lt;/em&gt; expect to do so in the foreseeable future. The Company accounts for option forfeitures as they occur.&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;margin:0pt 0pt 0pt 20pt;text-indent:20pt;"&gt;The following table summarizes information about stock options as of &lt;em style="font: inherit;"&gt; December 31, 2021:&lt;/em&gt;&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="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 5%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 2%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 5%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="14" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 34%;"&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;Outstanding&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="14" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 34%;"&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;Exercisable&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom;"&gt;&lt;td colspan="3" rowspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 7%; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"&gt;&lt;b&gt;Range&lt;/b&gt; &lt;b&gt;of&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"&gt;&lt;b&gt;Exercise&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"&gt;&lt;b&gt;Prices&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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 &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Average&lt;/b&gt; &lt;b&gt;Exercise&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Price&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Average&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Remaining&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Contract Life&lt;/b&gt;&lt;/b&gt;&lt;/p&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;(in years)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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;Aggregate&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Intrinsic &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Value&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Average&lt;/b&gt; &lt;b&gt;Exercise &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Price&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Average&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Remaining&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Contract Life &lt;/b&gt;&lt;/b&gt;&lt;/p&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;(in years)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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;Aggregate&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Intrinsic&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Value&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 5%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: right;"&gt;$3.42&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 2%; text-align: center;"&gt;&lt;em style="font: inherit;"&gt;-&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 5%;"&gt;$3.90&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;427,580&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.50&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;1.91&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;1,056,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;315,583&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.47&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;1.77&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;790,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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;The intrinsic value is the amount by which the market value of the underlying common stock exceeds the exercise price of the respective stock options. The aggregate intrinsic value of stock options exercised during the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; was $806,000 and $10,772,000, respectively.&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 &lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;$37,000 of total unrecognized compensation cost related to stock options was expected to be recognized over a weighted-average remaining period of 0.42 years. Cash received from 134,494 options exercised for the year ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;was $427,000.&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;text-indent:21pt;"&gt;&lt;b&gt;Dividends&lt;/b&gt;&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 holders of the Company&#x2019;s common stock are entitled to receive such dividends as &lt;em style="font: inherit;"&gt; may &lt;/em&gt;be declared by the Board of Directors of the Company from time to time to the extent that funds are legally available for payment thereof. The Company has never declared or paid any dividends on any of its outstanding shares of common stock. The Board of Directors&#x2019; current policy is &lt;em style="font: inherit;"&gt;not&lt;/em&gt; to pay dividends but rather to use available funds to repurchase common shares in accordance with the Company&#x2019;s repurchase program and to fund the continued development and growth of the Company. Consequently, the Company currently has &lt;em style="font: inherit;"&gt;no&lt;/em&gt; plans to pay cash dividends in the foreseeable future.&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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
  </us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754875"
      unitRef="Share">439000</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754876"
      unitRef="USD">4408000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754877"
      unitRef="Share">223100</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754878"
      unitRef="USD">2666000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754879"
      unitRef="USD">2078000</us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i_2021-12-31_PlanNameAxis-The2004PlanMember"
      decimals="INF"
      id="c81754885"
      unitRef="Share">5000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2020-01-01_2020-12-31_PlanNameAxis-The2004PlanMember"
      decimals="INF"
      id="c81754887"
      unitRef="Share">5009750</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i_2021-12-31_PlanNameAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c81754897"
      unitRef="Share">1800000</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="d_2020-06-10_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c81754908"
      unitRef="Share">24052</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2021-01-01_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c81754911"
      unitRef="USD">131000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c81754912"
      unitRef="USD">79000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="d_2021-01-01_2021-12-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"
      id="c81754913">P0Y8M23D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054731">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 18pt; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Weighted&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Average&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Exercise Price&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Shares&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Per Option&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Options outstanding, December 31, 2019&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;1,326,414&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2.86&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Granted to employees and directors&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Exercised&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(757,674&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2.64&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Canceled/expired/forfeited&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Options outstanding, December 31, 2020&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;568,740&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.42&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Granted to employees and directors&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Exercised&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(134,494&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.17&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Canceled/expired/forfeited&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(6,666&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.62&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Options outstanding, December 31, 2021&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;427,580&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.50&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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 style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Options exercisable, December 31, 2021&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;315,583&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.47&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
   </us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c81754931"
      unitRef="Share">1326414</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i_2019-12-31"
      decimals="INF"
      id="c81754932"
      unitRef="USDPerShare">2.86</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2020-01-01_2020-12-31_TitleOfIndividualAxis-EmployeesAndDirectorsMember"
      decimals="INF"
      id="c81754933"
      unitRef="Share">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="d_2020-01-01_2020-12-31_TitleOfIndividualAxis-EmployeesAndDirectorsMember"
      decimals="INF"
      id="c81754934"
      unitRef="USDPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754935"
      unitRef="Share">757674</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754936"
      unitRef="USDPerShare">2.64</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754937"
      unitRef="Share">-0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754938"
      unitRef="USDPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754939"
      unitRef="Share">568740</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754940"
      unitRef="USDPerShare">3.42</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2021-01-01_2021-12-31_TitleOfIndividualAxis-EmployeesAndDirectorsMember"
      decimals="INF"
      id="c81754941"
      unitRef="Share">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="d_2021-01-01_2021-12-31_TitleOfIndividualAxis-EmployeesAndDirectorsMember"
      decimals="INF"
      id="c81754942"
      unitRef="USDPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754943"
      unitRef="Share">134494</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754944"
      unitRef="USDPerShare">3.17</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754945"
      unitRef="Share">6666</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754946"
      unitRef="USDPerShare">3.62</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754947"
      unitRef="Share">427580</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754948"
      unitRef="USDPerShare">3.50</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754949"
      unitRef="Share">315583</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754950"
      unitRef="USDPerShare">3.47</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754916"
      unitRef="Share">427580</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754917"
      unitRef="Share">568740</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054732">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 5%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 2%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 5%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="14" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 34%;"&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;Outstanding&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="14" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 34%;"&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;Exercisable&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom;"&gt;&lt;td colspan="3" rowspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 7%; border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"&gt;&lt;b&gt;Range&lt;/b&gt; &lt;b&gt;of&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"&gt;&lt;b&gt;Exercise&lt;/b&gt;&lt;/p&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: center;"&gt;&lt;b&gt;Prices&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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 &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Average&lt;/b&gt; &lt;b&gt;Exercise&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Price&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Average&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Remaining&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Contract Life&lt;/b&gt;&lt;/b&gt;&lt;/p&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;(in years)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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;Aggregate&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Intrinsic &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Value&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Average&lt;/b&gt; &lt;b&gt;Exercise &lt;/b&gt;&lt;/b&gt;&lt;/p&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;Price&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Average&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Remaining&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Contract Life &lt;/b&gt;&lt;/b&gt;&lt;/p&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;(in years)&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&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;Aggregate&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Intrinsic&lt;/b&gt;&lt;/b&gt;&lt;/p&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;Value&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 5%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; text-align: right;"&gt;$3.42&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 2%; text-align: center;"&gt;&lt;em style="font: inherit;"&gt;-&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 5%;"&gt;$3.90&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;427,580&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.50&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;1.91&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;1,056,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;315,583&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3.47&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;1.77&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 8%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;790,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
   </us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754953"
      unitRef="USDPerShare">3.90</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754954"
      unitRef="Share">427580</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754955"
      unitRef="USDPerShare">3.50</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2 contextRef="d_2021-01-01_2021-12-31" id="c81754956">P1Y10M28D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754957"
      unitRef="USD">1056000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754958"
      unitRef="Share">315583</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754959"
      unitRef="USDPerShare">3.47</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2 contextRef="d_2021-01-01_2021-12-31" id="c81754960">P1Y9M7D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754961"
      unitRef="USD">790000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754922"
      unitRef="USD">806000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754923"
      unitRef="USD">10772000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754924"
      unitRef="USD">37000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 contextRef="d_2021-01-01_2021-12-31" id="c81754925">P0Y5M1D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754926"
      unitRef="Share">134494</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754927"
      unitRef="USD">427000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054733">
   &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: 18pt;"&gt; &lt;p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;11.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="width: auto;"&gt; &lt;p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"&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;text-indent:23pt;"&gt;The provision (benefit) for income taxes 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: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;For the Years Ended December 31,&lt;/b&gt; &lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Current&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;1,516,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;5,313,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;228,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;47,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/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(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Provision for income taxes&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;1,744,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;5,360,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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;text-indent:23pt;"&gt;Deferred income tax assets (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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Temporary differences:&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Property and equipment&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(993,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(706,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Intangible assets&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(10,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(9,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Inventory reserve&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;79,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;24,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Accrued expenses and inventory&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;216,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;250,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Basis difference in investments&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;35,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;35,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Foreign exchange&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;11,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(40,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;AMT/Foreign tax credits&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;42,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;State income taxes&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(171,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(117,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net deferred income tax liabilities&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(791,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(563,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&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 provision for income taxes differs from the amount that would be obtained by applying the U.S. statutory rate to income before income taxes as a result 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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;For the Years Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Income taxes based on U.S. statutory rate of 21% and 34%, respectively&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;1,785,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;6,772,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-deductible meals and entertainment&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;5,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;FDII deduction&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(49,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(348,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Foreign taxes&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(120,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(38,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;State taxes&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;219,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;747,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Stock Compensation&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(106,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(2,171,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;15,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;393,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Provision for income taxes&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,744,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;5,360,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
  </us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054734">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 18pt; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;For the Years Ended December 31,&lt;/b&gt; &lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 66%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Current&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;1,516,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 14%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;5,313,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Deferred&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;228,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;47,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/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(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Provision for income taxes&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;1,744,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;5,360,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754964"
      unitRef="USD">1516000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754965"
      unitRef="USD">5313000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754966"
      unitRef="USD">228000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754967"
      unitRef="USD">47000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754968"
      unitRef="USD">1744000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754969"
      unitRef="USD">5360000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054735">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Temporary differences:&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Property and equipment&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(993,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(706,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Intangible assets&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(10,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(9,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Inventory reserve&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;79,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;24,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Accrued expenses and inventory&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;216,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;250,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Basis difference in investments&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;35,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;35,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;Foreign exchange&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;11,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(40,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;"&gt;AMT/Foreign tax credits&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;42,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;State income taxes&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(171,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(117,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net deferred income tax liabilities&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(791,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(563,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
   </us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754971"
      unitRef="USD">993000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754972"
      unitRef="USD">706000</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754973"
      unitRef="USD">10000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754974"
      unitRef="USD">9000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <apt:DeferredTaxAssetsInventoryCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754975"
      unitRef="USD">79000</apt:DeferredTaxAssetsInventoryCurrent>
    <apt:DeferredTaxAssetsInventoryCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754976"
      unitRef="USD">24000</apt:DeferredTaxAssetsInventoryCurrent>
    <apt:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754977"
      unitRef="USD">216000</apt:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent>
    <apt:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754978"
      unitRef="USD">250000</apt:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent>
    <us-gaap:IssuanceOfStockAndWarrantsForServicesOrClaims
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754979"
      unitRef="USD">35000</us-gaap:IssuanceOfStockAndWarrantsForServicesOrClaims>
    <us-gaap:IssuanceOfStockAndWarrantsForServicesOrClaims
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754980"
      unitRef="USD">35000</us-gaap:IssuanceOfStockAndWarrantsForServicesOrClaims>
    <us-gaap:DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754981"
      unitRef="USD">11000</us-gaap:DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains>
    <us-gaap:DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754982"
      unitRef="USD">40000</us-gaap:DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains>
    <apt:DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754983"
      unitRef="USD">42000</apt:DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits>
    <apt:DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754984"
      unitRef="USD">0</apt:DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits>
    <apt:DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754985"
      unitRef="USD">171000</apt:DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent>
    <apt:DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754986"
      unitRef="USD">117000</apt:DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent>
    <us-gaap:DeferredTaxLiabilities
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81754987"
      unitRef="USD">791000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81754988"
      unitRef="USD">563000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054736">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;For the Years Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Income taxes based on U.S. statutory rate of 21% and 34%, respectively&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;1,785,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;6,772,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Non-deductible meals and entertainment&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;-&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;5,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;FDII deduction&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(49,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(348,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Foreign taxes&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(120,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(38,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;State taxes&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;219,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;747,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Stock Compensation&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(106,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;(2,171,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Other&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;15,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;393,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;Provision for income taxes&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;1,744,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;5,360,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754989"
      unitRef="USD">1785000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754990"
      unitRef="USD">6772000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754991"
      unitRef="USD">0</us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754992"
      unitRef="USD">5000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment>
    <us-gaap:IncomeTaxReconciliationTaxCreditsForeign
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754993"
      unitRef="USD">49000</us-gaap:IncomeTaxReconciliationTaxCreditsForeign>
    <us-gaap:IncomeTaxReconciliationTaxCreditsForeign
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754994"
      unitRef="USD">348000</us-gaap:IncomeTaxReconciliationTaxCreditsForeign>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754995"
      unitRef="USD">-120000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754996"
      unitRef="USD">-38000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754997"
      unitRef="USD">219000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81754998"
      unitRef="USD">747000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81754999"
      unitRef="USD">-106000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81755000"
      unitRef="USD">-2171000</us-gaap:IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:IncomeTaxReconciliationOtherReconcilingItems
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81755001"
      unitRef="USD">15000</us-gaap:IncomeTaxReconciliationOtherReconcilingItems>
    <us-gaap:IncomeTaxReconciliationOtherReconcilingItems
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81755002"
      unitRef="USD">393000</us-gaap:IncomeTaxReconciliationOtherReconcilingItems>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81755003"
      unitRef="USD">1744000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81755004"
      unitRef="USD">5360000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:LesseeOperatingLeasesTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054737">
   &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: 18pt;"&gt; &lt;p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;12.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="width: auto;"&gt; &lt;p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"&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;&lt;b&gt;Operating Lease Commitments:&lt;/b&gt; The Company leases its facilities under non-cancelable operating leases expiring on various dates through &lt;em style="font: inherit;"&gt; January 1, 2024. &lt;/em&gt;The Company has operating leases for the Company&#x2019;s corporate office and manufacturing facilities, which expire at various dates through&#160;&lt;em style="font: inherit;"&gt;2024.&lt;/em&gt; The Company&#x2019;s primary operating lease commitments at&#160;&lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;related to the Company&#x2019;s manufacturing facilities in Valdosta, Georgia, Nogales, Arizona and Salt Lake City, Utah, as well as the Company&#x2019;s corporate headquarters in Markham, Ontario, Canada.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;"&gt;As of&#160;&lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;the Company had operating lease right-of-use assets of&#160;$2,648,000&#160;and operating lease liabilities of&#160;$2,700,000. As of&#160;&lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;we did &lt;span style="-sec-ix-hidden:c81755009"&gt;not&lt;/span&gt; have any finance leases recorded on the Company&#x2019;s consolidated balance sheet.&#160;Operating lease expense was approximately&#160;$1,199,000 and $1,154,000 for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; respectively.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;"&gt;The aggregate future minimum lease payments and reconciliation to lease liabilities as of&#160;&lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;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: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 81%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;2022&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 16%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;1,010,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;2023&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;1,017,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;2024&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;484,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;2025&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total future minimum lease payments&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2,876,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Less imputed interest&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(176,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total lease liabilities&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;2,700,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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 &lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;the weighted average remaining lease term of the Company&#x2019;s operating leases was&#160;3.08 years. During the year ended &lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;the weighted average discount rate with respect to these leases was&#160;4.17%.&lt;/p&gt;
  </us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81755007"
      unitRef="USD">2648000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiability
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81755008"
      unitRef="USD">2700000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseExpense
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81755010"
      unitRef="USD">1199000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81755011"
      unitRef="USD">1154000</us-gaap:OperatingLeaseExpense>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054738">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 10%; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 81%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;2022&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 16%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;1,010,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;2023&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;1,017,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;2024&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;484,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;2025&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total future minimum lease payments&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;2,876,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Less imputed interest&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(176,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total lease liabilities&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;2,700,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81755015"
      unitRef="USD">1010000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81755016"
      unitRef="USD">1017000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81755017"
      unitRef="USD">484000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81755018"
      unitRef="USD">365000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81755019"
      unitRef="USD">2876000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81755020"
      unitRef="USD">176000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81755021"
      unitRef="USD">2700000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1 contextRef="i_2021-12-31" id="c81755013">P3Y29D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i_2021-12-31"
      decimals="4"
      id="c81755014"
      unitRef="Pure">0.0417</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054739">
   &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: 18pt;"&gt; &lt;p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;13.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="width: auto;"&gt; &lt;p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;Legal &lt;/b&gt;&#160;&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;&lt;b&gt;Legal Proceedings:&lt;/b&gt; The Company is subject to various pending and threatened litigation actions in the ordinary course of business. Although it is &lt;em style="font: inherit;"&gt;not&lt;/em&gt; 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 &lt;em style="font: inherit;"&gt;not&lt;/em&gt; 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:PensionAndOtherPostretirementBenefitsDisclosureTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054740">
   &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: 18pt;"&gt; &lt;p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;14.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="width: auto;"&gt; &lt;p style="font-family: Times New Roman;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;Employee Benefit Plans&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 certain benefit plans. Under the plans, employees &lt;em style="font: inherit;"&gt; may &lt;/em&gt;contribute up to 12% of their gross earnings subject to certain limitations. The Company contributes an additional 0.5% of gross earnings for those employees contributing &lt;em style="font: inherit;"&gt;1%&lt;/em&gt; of their gross earnings and contributes 1% of gross earnings for those employees contributing &lt;em style="font: inherit;"&gt;2%&lt;/em&gt; to &lt;em style="font: inherit;"&gt;12%&lt;/em&gt; of their gross earnings. The amounts contributed to the plans by the Company were $53,000 and $45,000 for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; respectively.&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 does &lt;em style="font: inherit;"&gt;not&lt;/em&gt; have any other significant pension, profit sharing or similar plans established for its employees. Pursuant to his employment agreement with the Company, Lloyd Hoffman, our President and Chief Executive Officer, is contractually entitled to receive from the Company at the conclusion of each fiscal year a cash bonus in an amount equal to 5% pre-tax profits of the Company, excluding bonus expense, as presented in the Company&#x2019;s audited consolidated statements of income for such&#160;fiscal year, subject to a maximum payment of $1,000,000. The Company accrued $447,000 for the year ended &lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;compared to $1,000,000 for &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; in connection with the bonus.&lt;/p&gt;
  </us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock>
    <us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent
      contextRef="d_2021-01-01_2021-12-31"
      decimals="2"
      id="c81755026"
      unitRef="Pure">0.12</us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent
      contextRef="d_2021-01-01_2021-12-31_RetirementPlanTypeAxis-ForEmployeesContributing1PercentOfGrossEarningsMember"
      decimals="3"
      id="c81755027"
      unitRef="Pure">0.005</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent
      contextRef="d_2021-01-01_2021-12-31_RetirementPlanTypeAxis-ForEmployeesContributing2To12PercentOfGrossEarningsMember"
      decimals="2"
      id="c81755029"
      unitRef="Pure">0.01</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81755032"
      unitRef="USD">53000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81755033"
      unitRef="USD">45000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <apt:BonusPercentage
      contextRef="d_2021-01-01_2021-12-31"
      decimals="2"
      id="c81755036"
      unitRef="Pure">0.05</apt:BonusPercentage>
    <apt:BonusMaximumThreshold
      contextRef="i_2021-12-31_TitleOfIndividualAxis-PresidentMember"
      decimals="INF"
      id="c81755037"
      unitRef="USD">1000000</apt:BonusMaximumThreshold>
    <us-gaap:AccruedBonusesCurrent
      contextRef="i_2021-12-31_TitleOfIndividualAxis-PresidentMember"
      decimals="INF"
      id="c81755038"
      unitRef="USD">447000</us-gaap:AccruedBonusesCurrent>
    <us-gaap:AccruedBonusesCurrent
      contextRef="i_2020-12-31_TitleOfIndividualAxis-PresidentMember"
      decimals="INF"
      id="c81755039"
      unitRef="USD">1000000</us-gaap:AccruedBonusesCurrent>
    <us-gaap:SegmentReportingDisclosureTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054741">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: left; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;15.&lt;/em&gt;&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="width: auto;"&gt; &lt;p style="margin: 0pt; text-align: left; font-family: Times New Roman; 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:c81755042"&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;(&lt;em style="font: inherit;"&gt;1&lt;/em&gt;) &lt;b&gt;Building Supply&lt;/b&gt;: consisting of a line of construction supply weatherization products. The construction supply weatherization products consist of housewrap 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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;(&lt;em style="font: inherit;"&gt;2&lt;/em&gt;) &lt;b&gt;Disposable Protective Apparel&lt;/b&gt;: 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 &lt;em style="font: inherit;"&gt;2&lt;/em&gt;). Segment data excludes charges allocated to the principal executive office and other corporate unallocated expenses and income taxes. 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 following table presents net sales for each 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;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Years Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Building Supply&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;36,889,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;30,580,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Disposable Protective Apparel&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;31,748,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;72,120,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/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(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Consolidated net sales&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;68,637,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;102,700,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;

   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;text-indent:-23pt;"&gt;The following table presents the reconciliation of total segment income to total consolidated net income:&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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Years Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Building Supply&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;7,350,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;5,396,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Disposable Protective Apparel&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;6,706,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;33,501,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total segment income&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;14,056,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;38,897,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Unallocated corporate overhead expenses&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;5,556,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;6,649,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Provision for income taxes&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,744,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;5,360,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Consolidated net income&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;6,756,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;26,888,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;"&gt;The following table presents net sales and long-lived asset information by geographic area:&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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Years Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net sales by geographic region&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;United States&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;65,844,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;90,495,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;International&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,793,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;12,205,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Consolidated net sales&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;68,637,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;102,700,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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="margin: 0pt;"&gt;&#160;&lt;/p&gt;

    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&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;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;As of December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;United States&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,623,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;2,787,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;International&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,441,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,566,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;6,064,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;4,353,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; 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 years ended &lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;the Company did &lt;em style="font: inherit;"&gt;not&lt;/em&gt; generate sales from any single country, except the United States, that were significant to the Company&#x2019;s consolidated net sales. For the year ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;the Company generated sales of approximately $8,090,000 from Australia. &lt;em style="font: inherit;"&gt;No&lt;/em&gt; other single 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;"&gt;The following table presents the consolidated net property, equipment, goodwill and intangible assets by 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;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;As of December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Building Supply&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;3,600,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;1,806,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Disposable Protective Apparel&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,419,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,432,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total segment assets&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;5,019,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3,238,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Unallocated corporate assets&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,103,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,177,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total consolidated assets&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;6,122,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;4,415,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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:SegmentReportingDisclosureTextBlock>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054742">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Years Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Building Supply&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;36,889,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;30,580,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Disposable Protective Apparel&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;31,748,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;72,120,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/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(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Consolidated net sales&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;68,637,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;102,700,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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_2021-01-01_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="INF"
      id="c81755051"
      unitRef="USD">36889000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="INF"
      id="c81755052"
      unitRef="USD">30580000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="INF"
      id="c81755053"
      unitRef="USD">31748000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="INF"
      id="c81755054"
      unitRef="USD">72120000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81755055"
      unitRef="USD">68637000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81755056"
      unitRef="USD">102700000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054743">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Years Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Building Supply&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;7,350,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;5,396,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Disposable Protective Apparel&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;6,706,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;33,501,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total segment income&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;14,056,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;38,897,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Unallocated corporate overhead expenses&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;5,556,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;6,649,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Provision for income taxes&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,744,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;5,360,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Consolidated net income&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;6,756,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;26,888,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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_2021-01-01_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="INF"
      id="c81755057"
      unitRef="USD">7350000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="INF"
      id="c81755058"
      unitRef="USD">5396000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="INF"
      id="c81755059"
      unitRef="USD">6706000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="INF"
      id="c81755060"
      unitRef="USD">33501000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="INF"
      id="c81755061"
      unitRef="USD">14056000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="INF"
      id="c81755062"
      unitRef="USD">38897000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="INF"
      id="c81755063"
      unitRef="USD">5556000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="INF"
      id="c81755064"
      unitRef="USD">6649000</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81755065"
      unitRef="USD">1744000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81755066"
      unitRef="USD">5360000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-01-01_2021-12-31"
      decimals="INF"
      id="c81755067"
      unitRef="USD">6756000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81755068"
      unitRef="USD">26888000</us-gaap:NetIncomeLoss>
    <us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock
      contextRef="d_2021-01-01_2021-12-31"
      id="c8D63C378-330D-4FBD-9361-B241E0A35B8C">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;Years Ended December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Net sales by geographic region&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;United States&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;65,844,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;90,495,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;International&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,793,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;12,205,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Consolidated net sales&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;68,637,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;102,700,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&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;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;As of December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;United States&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,623,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;2,787,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;"&gt;International&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,441,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,566,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;6,064,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;4,353,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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:Revenues
      contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="INF"
      id="c81755070"
      unitRef="USD">65844000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="INF"
      id="c81755071"
      unitRef="USD">90495000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="INF"
      id="c81755072"
      unitRef="USD">2793000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="INF"
      id="c81755073"
      unitRef="USD">12205000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="d_2021-01-01_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember"
      decimals="INF"
      id="c81755074"
      unitRef="USD">68637000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="d_2020-01-01_2020-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember"
      decimals="INF"
      id="c81755075"
      unitRef="USD">102700000</us-gaap:Revenues>
    <us-gaap:NoncurrentAssets
      contextRef="i_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="INF"
      id="c81755077"
      unitRef="USD">4623000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2020-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="INF"
      id="c81755078"
      unitRef="USD">2787000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="INF"
      id="c81755079"
      unitRef="USD">1441000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2020-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="INF"
      id="c81755080"
      unitRef="USD">1566000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember"
      decimals="INF"
      id="c81755081"
      unitRef="USD">6064000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2020-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember"
      decimals="INF"
      id="c81755082"
      unitRef="USD">4353000</us-gaap:NoncurrentAssets>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2021-01-01_2021-12-31_StatementGeographicalAxis-AU"
      decimals="INF"
      id="c81755049"
      unitRef="USD">8090000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054746">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; margin-left: 18pt; width: 85%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;As of December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 64%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Building Supply&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;3,600,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;1,806,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Disposable Protective Apparel&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,419,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,432,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total segment assets&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;5,019,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 15%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;3,238,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Unallocated corporate assets&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,103,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,177,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;Total consolidated assets&lt;/p&gt; &lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;6,122,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;&lt;td style="width: 15%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;4,415,000&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="INF"
      id="c81755083"
      unitRef="USD">3600000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="INF"
      id="c81755084"
      unitRef="USD">1806000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="INF"
      id="c81755085"
      unitRef="USD">1419000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="INF"
      id="c81755086"
      unitRef="USD">1432000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="INF"
      id="c81755087"
      unitRef="USD">5019000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2020-12-31_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="INF"
      id="c81755088"
      unitRef="USD">3238000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2021-12-31_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="INF"
      id="c81755089"
      unitRef="USD">1103000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2020-12-31_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="INF"
      id="c81755090"
      unitRef="USD">1177000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2021-12-31"
      decimals="INF"
      id="c81755091"
      unitRef="USD">6122000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2020-12-31"
      decimals="INF"
      id="c81755092"
      unitRef="USD">4415000</apt:TotalConsolidatedAssets>
    <us-gaap:ConcentrationRiskDisclosureTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054747">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;16.&lt;/em&gt; &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: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;Concentration of Risk&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt; text-align: justify;"&gt;The Company maintains its cash and cash equivalents in various bank accounts, the balances of which at times &lt;em style="font: inherit;"&gt; may &lt;/em&gt;exceed federally insured limits. The Company has &lt;em style="font: inherit;"&gt;not&lt;/em&gt; experienced any losses related to these accounts, and management does &lt;em style="font: inherit;"&gt;not&lt;/em&gt; believe that the Company is exposed to significant credit risk.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;"&gt;The Company&#x2019;s investments in marketable securities were held in &lt;em style="font: inherit;"&gt;one&lt;/em&gt; publicly traded entity.&#160; The Company recognized a gain on investment in common stock warrants in a prior period and during &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; recognized a net realized loss of $62,000 in the consolidated statement of comprehensive income. The Company was exposed to the fluctuation in the stock price of this investment when it held these securities. As of &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;the Company &lt;em style="font: inherit;"&gt;no&lt;/em&gt; longer holds any investments in marketable securities.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;"&gt;Management believes that adequate provision has been made for risk of loss on all credit transactions.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;"&gt;The Company buys a significant amount of its disposable protective apparel products from a limited number of contract manufacturers located in Asia and, to a much lesser extent, a contract manufacturer in Mexico. Management believes that other suppliers could provide similar products at comparable terms. A change in suppliers, however, could cause a delay in shipment and a possible loss of sales, which would affect operating results adversely.&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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;"&gt;The Building Supply segment buys semi-finished housewrap and synthetic roof underlayment from its joint venture, Harmony, located in India. Although there are a limited number of manufacturers of the particular product, management believes that other suppliers could provide similar products at comparable terms. A change in suppliers, however, could cause a delay in shipment and a possible loss of sales, which would affect operating results adversely.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;"&gt;The Company provides products to customers located primarily in the United States. Customers accounting for 10% or more of accounts receivable as of &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; and 10% or more of net sales for the years ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt;2020,&lt;/em&gt; 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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 62%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Accounts Receivable:&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-left: 54pt;"&gt;Customer A&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;13&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;11&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-left: 54pt;"&gt;Customer B&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;19&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font: inherit;"&gt;*&lt;/em&gt;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-left: 54pt;"&gt;Customer C&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font: inherit;"&gt;*&lt;/em&gt;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;18&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 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(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Net sales:&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-left: 54pt;"&gt;Customer A&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;21&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;15&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-left: 54pt;"&gt;Customer B&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;13&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font: inherit;"&gt;*&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-left: 54pt;"&gt;Customer C&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font: inherit;"&gt;*&lt;/em&gt;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;10&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;

   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;"&gt;&lt;b&gt;* &lt;/b&gt;Customer&#x2019;s balance was below the &lt;em style="font: inherit;"&gt;10%&lt;/em&gt; threshold for accounts receivable and/or net sales as of and for the year ended &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;and &lt;em style="font: inherit;"&gt; December 31, 2020.&lt;/em&gt;&lt;/p&gt;
  </us-gaap:ConcentrationRiskDisclosureTextBlock>
    <us-gaap:DebtSecuritiesAvailableForSaleRealizedLoss
      contextRef="d_2020-01-01_2020-12-31"
      decimals="INF"
      id="c81755098"
      unitRef="USD">62000</us-gaap:DebtSecuritiesAvailableForSaleRealizedLoss>
    <apt:ConcentrationRiskThresholdPercentage
      contextRef="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="1"
      id="c81755102"
      unitRef="Pure">0.10</apt:ConcentrationRiskThresholdPercentage>
    <apt:ConcentrationRiskThresholdPercentage
      contextRef="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="1"
      id="c81755105"
      unitRef="Pure">0.10</apt:ConcentrationRiskThresholdPercentage>
    <us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054748">
    &lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;; text-indent: 0px;"&gt;&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="6" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2021&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;; 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;2020&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; width: 62%;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Accounts Receivable:&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-left: 54pt;"&gt;Customer A&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;13&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;11&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-left: 54pt;"&gt;Customer B&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;19&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font: inherit;"&gt;*&lt;/em&gt;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; 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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-left: 54pt;"&gt;Customer C&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font: inherit;"&gt;*&lt;/em&gt;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;18&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 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(255, 255, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt; &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"&gt;&lt;b&gt;Net sales:&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-left: 54pt;"&gt;Customer A&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;21&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;15&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-left: 54pt;"&gt;Customer B&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;13&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td colspan="2" style="text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font: inherit;"&gt;*&lt;/em&gt;&lt;/td&gt;&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&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: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; padding-left: 54pt;"&gt;Customer C&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&lt;em style="font: inherit;"&gt;*&lt;/em&gt;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt;"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;10&lt;/td&gt;&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; margin-left: 0pt;"&gt;%&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
   </us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember"
      decimals="2"
      id="c81755110"
      unitRef="Pure">0.13</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember"
      decimals="2"
      id="c81755111"
      unitRef="Pure">0.11</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerBMember"
      decimals="2"
      id="c81755112"
      unitRef="Pure">0.19</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerCMember"
      decimals="2"
      id="c81755115"
      unitRef="Pure">0.18</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember"
      decimals="2"
      id="c81755117"
      unitRef="Pure">0.21</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember"
      decimals="2"
      id="c81755118"
      unitRef="Pure">0.15</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerBMember"
      decimals="2"
      id="c81755119"
      unitRef="Pure">0.13</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2020-01-01_2020-12-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerCMember"
      decimals="1"
      id="c81755122"
      unitRef="Pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <apt:EmploymentAgreementsTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054749">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;17.&lt;/em&gt;&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: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;Employment Agreements&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;The Company has entered into an employment agreement with its current President and Chief Executive Officer, which has a term of approximately &lt;span style="-sec-ix-hidden:c81755124"&gt;five&lt;/span&gt; years and which renews in accordance with its terms.&#160; The agreement provides that, if the officer&#x2019;s employment is terminated without cause, as defined in the agreements, the officer is entitled to receive certain severance payments.&#160; If termination occurs due to retirement, the officers will enter into a &lt;em style="font: inherit;"&gt;four&lt;/em&gt;-year consulting arrangement with the Company at a specified percentage of the officer&#x2019;s then current salary. Upon death or disability, the Company will also make certain payments to the officer or the officer&#x2019;s estate or beneficiary, as applicable.&lt;/p&gt;
  </apt:EmploymentAgreementsTextBlock>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054750">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;18.&lt;/em&gt;&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: Times New Roman; 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;During &lt;em style="font: inherit;"&gt;2021,&lt;/em&gt; the Company&#x2019;s only material related party transactions were the Company&#x2019;s transactions with its non-consolidated affiliate, Harmony. See Note &lt;em style="font: inherit;"&gt;7.&lt;/em&gt;&lt;/p&gt;
  </us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <apt:ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054751">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;19.&lt;/em&gt;&lt;/b&gt;&lt;/p&gt; &lt;/td&gt;&lt;td style="width: auto; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;b&gt;Out-of-Period Adjustment&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;"&gt;During the financial close for the year ended &lt;em style="font: inherit;"&gt; December 31, 2021, &lt;/em&gt;the Company discovered certain immaterial errors in its income tax accounting related to state tax apportionments and deferred tax assets in relation to Incentive Stock Options (&#x201c;ISO&#x201d;).&#160; In periods prior to &lt;em style="font: inherit;"&gt; January 1, 2020, &lt;/em&gt;the Company should have recognized approximately $291,000 of additional tax expense, primarily related to stock compensation from ISOs&#x2019;. As a result, the Company has increased its accrued liabilities by $12,000 and deferred income tax liabilities by &lt;em style="font: inherit;"&gt;$279,000&lt;/em&gt; and decreased its retained earnings by $291,000 as of &lt;em style="font: inherit;"&gt; December 31, 2019. &lt;/em&gt;Furthermore, for the year ended &lt;em style="font: inherit;"&gt; December 31, 2020, &lt;/em&gt;the Company should have recognized $154,000 in additional state income tax expense and $44,000 in additional income tax expense for ISOs that were being treated as deferred tax asset instead of expense. The error was corrected by increasing the provision for income tax in &lt;em style="font: inherit;"&gt;2020&lt;/em&gt; by $198,000. Accrued liabilities were increased by $198,000, deferred income tax liabilities were increased by $279,000 and retained earnings was decreased by $489,000 as of &lt;em style="font: inherit;"&gt; December 31, 2020.&lt;/em&gt;&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
   &lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 21pt;"&gt;These revisions resulted in a decrease of earnings per share and diluted earnings per share of $.01 and $.02, respectively for the year ended &lt;em style="font: inherit;"&gt; December 31, 2020.&#160; &lt;/em&gt;Management has determined that this revision was &lt;em style="font: inherit;"&gt;not&lt;/em&gt; material on a quantitative or qualitative basis to the prior period financial statements based on our analysis performed in accordance with the guidance provided by SEC Staff Accounting Bulletins &lt;em style="font: inherit;"&gt;No.&lt;/em&gt; &lt;em style="font: inherit;"&gt;99&lt;/em&gt; &#x2013;&#160;Materiality&#160;and &lt;em style="font: inherit;"&gt;No.&lt;/em&gt; &lt;em style="font: inherit;"&gt;108&lt;/em&gt; &#x2013;&#160;Considering the Effects of Prior Year Misstatements&lt;/p&gt;
  </apt:ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock>
    <us-gaap:DeferredTaxExpenseFromStockOptionsExercised
      contextRef="d_2019-01-01_2019-12-31"
      decimals="INF"
      id="c81755840"
      unitRef="USD">291000</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="d_2021-01-01_2021-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"
      decimals="INF"
      id="c81755132"
      unitRef="USD">12000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i_2021-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"
      decimals="INF"
      id="c81755137"
      unitRef="USD">-291000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="d_2021-01-01_2021-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"
      decimals="INF"
      id="c81755138"
      unitRef="USD">154000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:DeferredTaxExpenseFromStockOptionsExercised
      contextRef="d_2021-01-01_2021-12-31_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis-ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"
      decimals="INF"
      id="c81755139"
      unitRef="USD">44000</us-gaap:DeferredTaxExpenseFromStockOptionsExercised>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2021-01-01_2021-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"
      decimals="INF"
      id="c81755141"
      unitRef="USD">198000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:AccruedLiabilitiesCurrentAndNoncurrent
      contextRef="i_2020-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"
      decimals="INF"
      id="c81755848"
      unitRef="USD">198000</us-gaap:AccruedLiabilitiesCurrentAndNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="i_2020-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"
      decimals="INF"
      id="c81755849"
      unitRef="USD">279000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i_2020-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"
      decimals="INF"
      id="c81755850"
      unitRef="USD">-489000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2020-01-01_2020-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"
      decimals="INF"
      id="c81755851"
      unitRef="USDPerShare">-1</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2020-01-01_2020-12-31_RestatementAxis-RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"
      decimals="INF"
      id="c81755852"
      unitRef="USDPerShare">-2</us-gaap:EarningsPerShareDiluted>
    <us-gaap:SubsequentEventsTextBlock contextRef="d_2021-01-01_2021-12-31" id="c2054752">
   &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: 18pt;"&gt; &lt;p style="margin: 0pt; text-align: justify; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&lt;em style="font: inherit;"&gt;20.&lt;/em&gt;&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: Times New Roman; 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 23pt;"&gt;The Company has reviewed and evaluated whether any additional material subsequent events have occurred from &lt;em style="font: inherit;"&gt; December 31, 2021 &lt;/em&gt;through the filing date of the Company&#x2019;s Annual Report on Form &lt;em style="font: inherit;"&gt;10&lt;/em&gt;-K.&#160; All appropriate subsequent event disclosures have been made in the consolidated financial statements.&lt;/p&gt;
   &lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"/&gt;&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"/&gt;
  </us-gaap:SubsequentEventsTextBlock>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>83
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M2H-_; T[(4L#L21*DY%*H?! _5%>=6QQ]/$-1K+4<XH+<DYR)5[)U(.P!NO
MW55;Q(LX9)^WJ>,,Z#G'&)9*3W%QSAD./4_+)#G9'Q#;#-S'U;[#(?N.K?JI
M#D1,QAJ::XA+&D!<*&48Z;(,4%RYWY,>96<0])5ZB2L)XW#0G3WY(L*HE>6
MXAK^GEJ1D'.MGH/8K78HCGE_AW6P955@N*J_IS97B0%-_C/8'GU+:A!G?$$&
M"RRFK"P5#%=X&\,A+""/D\$!!@XF+*RL$ R7]9FRK86O8DSK:D"Z9X.VT^]U
M,49E46"XCJ\" [JKUH2R3X^?R5*Z\&Z9RDZZ!FFDH@C$9VF4^W1"/CJG#B5;
M:%B>18C65U96"H:+/-0M+X@W9/D6/:JPDB(.,)RO,")E?6"X@N^]1&Y>75_$
M&WFTT:\!NGM88L6 E<6 -2H&/V48MI]BD"J(I$@@S3PR39+T2)[AF'<*HU96
M =:H"OQ0(51-H7>57E>VL#5(.*%2X5DCA=\O1'8MD,TKT-/JWKH&\4$F&+-2
MX%DC@9_&1NK=UE'6/XH]U4IF."+.C)?ZSAOINPT=&4'9V2A=*1(U.$/7E0 !
M -X.#&-7ZCO'Y3EGMXQ$&)+K-(';264<:W!J5@*\U'F.2W1.Z":2>I-EUN^
M8'RH/M%6Q-5^PP'KVFU^L#V#R_3>5SY(!4KH__7_O%1UWJC_GZ>/8>"22:A$
M5:*/<Y2>1<GV?9]A*4EY_ZQ'87GT7$6AU'/>J-__M8(M?0&]#+E/#;0R<59X
MJO;F<N3^(2U.^8 /CK$J-9W7[-BD7F"@NSM66VK,5R*.X66=S498F$H9Y[CX
M[MED+4RVRJADA$/,I!^<D.]&^!BC4L<YKKI[1I- 1V0ZKB2$([ S!V-2ZC;'
M578ZFBS(GL[0& D98U=BQ[;::O".Z5#G8$<\DQ;[92$A;K8>W6V.%U>+KQ=#
MNV??*1_???J =0DH4T)"N093Y_0,\ECOOB;L3HS:VOWU1V6,BNRA+X4G=?8
MW%\K9?8GV0#%-YVK?P%02P,$%     @ ^7)K5*WTB.[+!0  /A<  !@   !X
M;"]W;W)K<VAE971S+W-H965T,BYX;6RM6&UOXS8,_BM"4& ;D#:6_!*[:P/<
MI=OM@ THVMWV6;&5QJAC^20Y:??K1RFN[4"RV@'[TEH.23^D*#ZD;HY</,L=
M8PJ][*M:WLYV2C77BX7,=VQ/Y15O6 V_;+G84P5+\;20C6"T,$K[:D&"(%GL
M:5G/5C?FW;U8W?!6567-[@62[7Y/Q>MG5O'C[0S/WEX\E$\[I5\L5C<-?6*/
M3'UK[@6L%KV5HMRS6I:\1H)M;V>?\/4Z#+2"D?BK9$<Y>D;:E0WGSWKQM;B=
M!1H1JUBNM D*_PYLS:I*6P(<WSNCL_Z;6G'\_&;]5^,\.+.ADJUY]7=9J-WM
M+)VA@FUI6ZD'?OR-=0[%VE[.*VG^HF,G&\Q0WDK%]YTR(-B7]>D_?>D",5+
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
M5)53$@3)M**\GLQNFK%'.;L16UWRFCU*I+951>7W.U:*_>T$3PX#7_EJK<W
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
MF,1^U--T";(KZJS!@>\PJ '"4-_NGF$'-;ASND&<Q*%>+$/&( D\=[A:IT8
MVCN!_\-^H-X6C'U/]^3E!<"NC%/_ .T-Q'LM".JV/M:M9=[ .L0A#/2K;F%"
M>BC0<RZ-C_9=RQ$\M130WE/\L!]!O3.0)\=/^H;T-J[+^-1!0'L+<8DGS:'N
M\#XR'1?=YWT4#:_KR>:AW>??8SA-2IOC&" >-%T8>C^@2=<AO51=Z:>> =J;
M!KOM0+T3"*/ 5!J]%>@#NP1/O0"T-P,_83O06#?=OJ$GS[PTE+ZF"Y!=42>O
MAW:S'[ =,V'=TJ&G]],+ RY$OJE',")#9+ =Y^S=@7HU] 6S32Z/<T'6,M2]
MB60.=GS;<IP(NJM?)SQ2(6A9#[<$9X0I@/Q_3:EXG:@W%.T[K]E_4$L#!!0
M   ( /ER:U2H3W_L)08  (,8   8    >&PO=V]R:W-H965T<R]S:&5E=#8N
M>&ULE5EM;]LX#/XK0G ?-F!I+/DE3M$&:-,5-V#;%2MV]UFUE<17Q_(D)6WO
MUQ\EIW92T\H*%(WLD-)#BN1#*1=/4CWJM1"&/&_*2E^.UL;4YY.)SM9BP_69
MK$4%WRREVG #CVHUT;42/'=*FW+"@B"9;'A1C>87[MV=FE_(K2F+2MPIHK>;
M#5<OUZ*43Y<C.GI]\:-8K8U],9E?U'PE[H7Y6=\I>)JTL^3%1E2ZD!518GDY
MNJ+GBS"T"D[B[T(\Z8,QL:8\2/EH'[[DEZ/ (A*ER(R=@L/'3BQ$6=J9 ,>O
M_:2C=DVK>#A^G?W6&0_&/' M%K+\I\C-^G*4CD@NEGQ;FA_RZ4^Q-RBV\V6R
MU.X_>=K+!B.2;;61F[TR(-@45?/)G_>..%"@R8 "VRNPMPK1@$*X5W">FS3(
MG%DWW/#YA9)/1%EIF,T.G&^<-EA35'8;[XV";PO0,_.%K+0LBYP;D9-[ Q^P
M1T83N20+KM?D%O99DS'Y>7]#/OSQ\6)B8%&K.LGV"UPW"["!!2@CWV1EUII\
MKG*1'T\P ;0M9/8*^9IY9[P1V1D)Z2?" D810(O?5P\\<,+6@Z&;+QSR8.>F
M6R4WY*]:*&Z*:D6N;(@6IA#ZW+-.U*X3N76B@76^0TX7528W MN$1C=VNC9U
M=_-D&B=! !;N#GW3EV-)FJ:'@D?HXA9=[/7"5?XO!&L3.T9"@F>RRHI2D*J%
M;=_;I\PZK%9R5T \D(<7\F&K85!4'XEL?<=_RW=)BR[Q^NY^S948VW3/"4"!
M&JBYK2*8)YN9D@,/A33N.Q(1F\:#;IRV0*=>H#<"BG%6\*;$53GA&ZE,\=\@
MVFD/1DJG?;1]L2F;#:)-6[2I%^U7J:%25%"/U*,P_ &V6XMLJ]R^86C3'HRW
M0/L2"1O$.6MQSKPX/__:%N8%(NPU$J&Z;6%T4/KX<EF4X'<TN68]4.-X2OM>
M1N2<V !\&G1%.O :T-644D 0$_%L0UA\<OD$QO L4V(H1/9S'\5(BL0((C<.
MX^DP_ ..H2>B>BF4<CG>% +^C,?'?IY#"(RE"-2^7.0!RCJ@S%_+U[Q:"6TC
MA6LMH);9'(2X>(#@.%6,:,<8-/3ZXRK+Y-962LAU4>QLXKBM1%T2(J:&2$%"
M!,=1G$3#;NF8A_JI!\6K1.DRI^;*O*#((P30%-M-1)"F=!AX1THT]@+_4NV
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
M)0  &    'AL+W=O<FMS:&5E=',O<VAE970X+GAM;)U:;6\;-Q+^*X0O.+2
M+%NRY9<T"6 [SC5%DAJQT^)PN _4+E=BLTLJ)->*^^OOF2&YNW(D-SV@=:1=
M<CCO\\Q0+];6??9+I8+XVM3&O]Q;AK!Z?G#@BZ5JI!_;E3)X4UG7R("O;G'@
M5T[)DC<U]<'T\/#DH)':[+UZP<]NW*L7M@VU-NK&"=\VC70/EZJVZY=[D[W\
MX*->+ ,].'CU8B47ZE:%3ZL;AV\''952-\IX;8UPJGJY=S%Y?GE,ZWG!;UJM
M_>"S($GFUGZF+V_+EWN'Q)"J51&(@L0_]^I*U341 AM?$LV][DC:./R<J;]A
MV2'+7'IU9>O?=1F6+_?.]D2I*MG6X:-=_ZR2/#.B5]C:\U^QCFMGTSU1M#[8
M)FT&!XTV\5_Y->EAL.'L<,>&:=HP9;[C0<SE:QGDJQ?.KH6CU:!&'UA4W@WF
MM"&CW :'MQK[PJL/-B@Q%?OB-EI%V$K<ZH71E2ZD">*B*&QK@C8+<6-K76CE
M7QP$'$S;#XITR&4\9+KCD,E4O+<F++VX-J4J-PD<@...[6EF^W+Z),77JAB+
MH\E(3 ^GDR?H'75J.&)Z1T^HP8M@Q1MMI"FTK,5MD$'!_8)_@OYQ1_^8Z1_O
MH/\7*A7_N5-?@[BL;?'YO]OT^S3UZ?AOF$_<. T)5S4^8O65-1YO2LE!<K=4
MHNB>J%)4G3Y\IP_:%K#PRC8K:1X$R-5MJ?B9C =^LT::4F@\7B]M73_LV[4!
M<=_.O2ZU=&!K)"[JU5*".RON5+$<B;<&-J9]W0MZ#A=:0'SEL!^/RK8(/JV]
MJ,'E0'AM@G)%9B S1A2#D\9+S@M>+.6]$G.EC%"U1HBQW-H,](!E8W%]S[*'
MI0S"%D7KB -9X0@!;U3-'!^R1XI/7I$&KGW0R!S0-"D667,E750T7FY5;3R7
MDJT.#\@%82D^C6_'8J&,<A*J(T'4BEB4O6U7O4E_^.<_SJ;3PY]XU[\N+F[X
M^^2G'Y%"O[3:84DC#?(MG4<>W\C/2JB.45*/],C1JZ@=EE=6%;(H&Q0R6,?'
M-YVAL5XES=9:SG6M@TZD:$NI?5%;WSK6"<0CGNGT7?OB2>2 V8VVZBK3W\:2
M4S!7FYA07U'#/+Y KX,=K#GEM"WA.T5H01WJ03KW8+*M2S .N9VHG&UHFQ_H
M:2QN>">%$UX8.I[\+[/0.Y7# R0]4C4=;93$!I+0MIZ88QO3&_65#)N<@QZ
M-^&76$ZJD&/VH1Q/7\ M_)R$AHS"-_ -+.\%Z_P^*K-1D@S 1F?%DBI*!>^%
MQ]-ZWR*V$M4B^FC9.GI##CT686WY_ROIEZQ4_G -E[J7-9MCR![%CBZ5 V]0
MRA*E$9Y;:ZRFT+J' J()5ZTKEBBJ20T2LCN-^(8IH&:<'QZB-IQ2"/)^X_ S
M::BHX4R]0NZEKN6\5OL0<]^#00HL"AA7PH_4(+ H1#956UIXBK&(<J-R O7B
M(V(<HH)F_\SUSX@'? 5]XB#J'():C<.B3[#22LN4&_G $IA@*?=M?,[9M'*,
M*/:U&9$NX&VR1J:#6+ <T;+WRBV!PZ!LGZ*!N.  Z7@ Z();<-C!Z;#3 .@!
MO=7Z3^8;QFL5ITZ[)LWX34G(2SQ>[3?V'KXP$G:.G*@H,)UH#3QXSKKMV-]4
M)04X_3=<P31S')6)H"\4F86)HHY]5H$)KU*"9^'6\ 9L+U$[4EJAZ.1]<Q76
M%&N!RQ<)6F4+=,?F;-$?O4T5GC%>*=H50<9!'H3:VR"J-E :(X^*%'V[6M5$
MWIK])1Z,J2@A<$,L>10?*PZZC<>J>[QI,>8=I#WY:MNT-;\H%2H'DE^$L8;S
M'(+\SU28KMC\2"\E<EYM5['N40BUR%C>5F%-IW"4()LL8BY*.9&B!1X7JQE5
MDSJF'I=J(2 %C/ '97^PN5!(;#[F-4HPY EE9(G4D/-&Y(/EFRM$\R.OH'K
M18#47<B5#FP#WLMZIW3*J8=9@7C[FLXB@G%59&4CM5NSL+2%&I&@#$=Y-A"T
M%8-D_)09.C635[JL9%*+S[QX  <.2D)@R*E(XC$.X]LEE2&7G0]I?J6XZ2!#
M5&V-!'BO.F24BE]7D:*M:^1I("FD94^FJ2P%IG\N+EM=EV #!1Z9[ %%Q/\H
MIC/Q7A9+\.(>"S18-0.ZG\S$KU5%R:AJG='LQ#LW4#MP*MX1)T!K2-@-7. ^
M%=W!NF.LFXG;[& ;1UZ374H^*$8\ E6MD<'X6,0KB=AG[^P$JAP!(B*JI4]I
M#=IZ;%*"4=KYQQY-AI4Q6+7)!10ENO-O)'MKR[6F,@TR;^%-P)*<T:,M-E)7
M3O+$_&*X#ST?2F90^V1.HMZ122;=4FKZMF* R-%AF%(Z8(A+BW\ZZ/;FXO:R
M0VU;UU_9LB_3>=O%[56WZVAV..)*<R+>0%?B-\IMI,N>D;<&WMPV7>GN\V)%
M.U(VW,"I>K E1DS$#]@3LR8WZK6Z)_0=TSCVQ,E!SEU YL37?&,WZXBCSW-*
M&QB"1)J<_N1WL,%  TD3"!@'ZIKA0@%H,N*_[. 9H-#Q@^+B54$ XW'1Z@[<
MNO3[P$:NQ85T3L?4SDI-.F'=]BK[TEI2>WH)20IBZ6U#7LZQ"9'>(;_MOV.'
MV^*L0+LTKD"UQZKHELD7R7MU3PFQ913E*Q6[&;Q%! &-L]=2@S:G;$<5J- .
M)0B9EE&!1C 7A!NY'^ Z"]D>R"T'J'N0UPCBD*'S_]_V2/AS. :N8J!.^,JB
M=6,_^0 UQ!*;P)#/>#YB\0U8X)=ZM6(^\(5*<,WPE_,"\!(5>7#6-SBDD40
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
M>:=\]"#1T9 W:+:>RJ[JG:)NWH?3X;>X[$CRW[W[:KX+LY7*0HT;#HU'DW$
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
M!0'_7UEN@<X("_1WX.P-4$L#!!0    ( /ER:U0?&><_)@4  !\-   9
M>&PO=V]R:W-H965T<R]S:&5E=#(Q+GAM;)U7VV[;.!#]E8&1ASZPL>Z6@R1
MDFZQ"VR+H&EWL5CL RV-):(4J9)4G/S]#BG93EK'#?IBB_3,F3-7C<\WVGRU
M+:*#ATXJ>S%KG>O/YG-;M=AQ>ZI[5/3+6IN..SJ:9FY[@[P.2IV<)U%4S#LN
MU.SR/-S=FLMS/3@I%-X:L$/7<?-XC5)O+F;Q;'OQ232M\Q?SR_.>-WB'[DM_
M:^@TWZ'4HD-EA59@<'TQNXK/KC,O'P3^$KBQ3Y[!>[+2^JL__%%?S")/""56
MSB-P^KK'&Y32 Q&-;Q/F;&?2*SY]WJ*_#[Z3+RMN\4;+OT7MVHM9.8,:UWR0
M[I/>_(Z3/[G'J[2TX1,VHVR6S* :K-/=I$P,.J'&;_XPQ>&)0AF]H)!,"DG@
M/1H*+-]QQR_/C=Z \=*$YA^"JT&;R GEDW+G#/TJ2,]=?M0.(<[A+5SY^ CW
M"'H-UX,E.6OA#AO*@+/G<T?&O,J\FH"O1^#D!> X@0]:N=;";ZK&^CG G%CN
MJ"9;JM?)4<1W6)U"&C-(HB0^@I?N7$\#7GK$=0M.PWNAN*H$EW#GN,,##C_#
MSW;X6<#/7L"?8@>?L-?&"=7 .V$KJ>U@$/[]C \.KJ6NOOYW*+A'H7VGGMF>
M5W@QHU:T:.YQ=AGGI\>3")];A!O=]5R10(^&AP"T1@]-"VZCX0W$I"9D[=G>
M#7TO'^DN\<1[;?E*(MP:"EMH);CJ>VY0;O&AI@($?*CD4!-NU7+3T#>7Y"19
MJGVH'3'HC:!H]Q1N?,!J"%!ZO185 E<U:)(Q,*B]7J4-19 >0=^C:6GTD"9-
M)>O128/@=(?@^,/I,Q?QGLMA\I',H@DS3%7>' B*A]T&QJ-L[5F:-58/IAJ+
M@U2[T/>U)TZ#2U!,:)PH&IB62[2C35Y5>E AR[V6HA*D35:\X;T5RGNXX,26
M>U;:(HT06QFQ"OAX+_1@R<! /6,H V%2>J [T2A!,>(4YZN]K=NMK3<6$4(S
M)X'/6I,[&R_B0MI"F7@2.]XD8@!YU6X)GL$_R,W4KT#=AMV*2&P[SG]$/U3'
M":0%*\LEBZ+('R*6EU$X'*\90EUD91!<)"Q.1IT;K2QY5(>T[YF>0%&R(EU,
M1N(H88MHU#CJJP^VP4I3N4G!PUO YT0[JKW)Z5WQZ.F^^I["*/"+P5FP-(\F
MVCE+E\4K0E.0<Z-<FK(\BD<_#Y&.,Q;EDVC)RN48H"^O;)V<Y9-RP8ILS"#1
MN1?AA>NK8]]8).X3E@4A<J1X(5^3QHEW8@(_@<172/GS=.T3[OM1:M6\E108
M:DUK _:X@WAVJT=H4#>&]ZVH?&/Q5R7HX\["<P"#C4?]HH1W)+P%0M7EK)Q\
M/H%EQ+)E'@Y_*(=&!2:4%"K&91KNXX0E4?Z+E7P5!L8+Q/_\+ABO="!C19)N
ML\ 6Y>( _9AEV5AC,<N+XD?V8U]\GX[@"XN*;7@RJO31U$^"[*?@.$_IX#LT
M##/CAYA0L"')%FC\3LL/FG%N3@5]"K2+!:W'D&T\G&T&2KL#L?RH?SXP?A@
MO?'O2O?( +\-HO<-R*#1NMX(*:<7D..J$1YJGYW=5#V:V /SE!71=F3$K(Q>
M,S(HA_%RRF&6)@<FQL2+BG,23%F2ED?FQ:00LSB:BIO%B\43Y&=Q>E(2<9+L
M2B*+QVXXM$W-GRRME.8FK.9VK(9Q?]W=[K;_JW'IW8N/?QT^T*8AE 6):U*-
M3A?Y#,RXCH\'I_NP J^THYH*CWX6HO$"]/M:4TBG@S>P^T]T^3]02P,$%
M  @ ^7)K5+D7WNN5!   Y0H  !D   !X;"]W;W)K<VAE971S+W-H965T,C(N
M>&ULY5;!<MLV$/V5'7720T>11,EV7-?VC.4TDQR<\=A)>^CT )%+$34(,  H
M67_?MZ!$RXGLF9Y[H$0NL6_?OETL<;YV_B%4S)$>:V/#Q:"*L3D;CT-><:W"
MR#5L\:9TOE81CWXY#HUG522GVHRGD\G)N%;:#B[/D^W67YZ[-AIM^=93:.M:
M^<V<C5M?#++!SG"GEU44P_CRO%%+ON?XM;GU>!KW*(6NV0;M+'DN+P97V=G\
M2-:G!7]H7H>]>Y),%LX]R,.GXF(P$4)L.(^"H/"WXFLV1H! X]L6<]"'%,?]
M^QWZAY0[<EFHP-?._*F+6%T,3@=4<*E:$^_<^B-O\SD6O-R9D'YIW:T]F@TH
M;T-T]=89#&IMNW_UN-5AS^%T\H+#=.LP3;R[0(GE>Q75Y;EW:_*R&FARDU)-
MWB"GK13E/GJ\U?"+EY]=9,I.Z"U=.YNSC5XEM5Q)=SH\G(\C@LC2<;X%G'>
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
MMJG]LK2O"&KG8,^/REY);[@ P[N4_@502P,$%     @ ^7)K5.F&&?F? @
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
M/,66J'OXR&M&6W$05MU2K1UD%JV"*XC[GSR&;B7!%5>*PIL*Y3J\A<.MILQ
MN0(YIN!(A"77%HP%@9E)KX;OSRE3Y](1TTBLS!VY@DZ!IA,&*;T@F*;_OR\"
MXI_]WD5J2X&C_EK@QU 7>K#A'R8-V9:9PKG2OOL 6 5.&[,/EXI1H9"TPL/=
M3"\6;!E\(<Y;<@F$ QM00JP:MFJK<[1&40"D(L)6,5GAE0TTHAD<RT:D8RA^
MJVT\W8!1B7Y1P3V6>J0@AE-RP&3GP;G#N-13=B//0X5WDCH:!G0S!X3>)!CC
M)'-HE\HVO&=YJ4-2&>I_7+<(7HHQLE3,Y7*N1X8LE1-U]2T@+M3MHAXV%(F^
MTR54K6VK@@V+0BR.L$RC. SJ)G!;,,CZ^3I!1:_ RR*O)9^4C#84?ZI6<#L:
M5VVK>/85"F,;U T,V\PU^:.N'7FC1%L.@HPD?JQ(2&<^<5\MP'H]$QX]5V&2
M72F8E@=]<FN&C\7^Y4SG,[)56UX.4K0G1'#*>5^W0-,+1;X#U!-O)=YK$ ':
MN^VG[W=Q9;Y_.%CW%"1@=$:\==3+ ]HRZZB_SOJQN_\NXU(&$U\V%K_I;L5?
MXE;<VE'W*[)VC)C$?8KY-GO'QB]T$8+<R5L]KI&$WRLM,/Y"JDZ<SR'S*_LI
M;UOR'/47(V^HCKL;PN>UO./0<&XM;4O^_%##](ZROIAUXR%M]X*'IO"%9*\]
M6TOQC!,$1CD\&75 +L"-%LCVXV8.,/<KO>XVTV;7F;)<,G-=PXW!6\7)Z'1
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
M+KLI2PWP?F*0]L<O-$#S*Z57_P=02P,$%     @ ^7)K5'PF-;1I P  EP<
M !D   !X;"]W;W)K<VAE971S+W-H965T,C@N>&ULE57;;N,V$/V5@; /#:!:
M$FW9LF$;B#<I6F"S-=:[+8JB#[0TLHA(I):DXN3O.Z1LK0,D1OLB\3)SYLSA
M<+@\*OUH*D0+STTMS2JHK&T7463R"AMN1JI%23NET@VW--6'R+0:>>&=FCIB
M<3R-&BYDL%[ZM:U>+U5G:R%QJ\%T3</URP9K=5P%27!>^"(.E74+T7K9\@/N
MT'YKMYIFT8!2B :E$4J"QG(5W":+3>KLO<$? H_F8@PND[U2CV[R6[$*8D<(
M:\RM0^#T>\*/6-<.B&A\/V$&0TCG>#D^H__B<Z=<]MS@1U7_*0I;K8(L@ )+
MWM7VBSK^BJ=\/,%<U<9_X=C;3N<!Y)VQJCDY$X-&R/[/GT\Z7#AD\3L.[.3
M/.\^D&=YQRU?+[4Z@G;6A.8&/E7O3>2$=(>RLYIV!?G9]6=E$1C\#+O^5$"5
ML!,'*4J1<VGA-L]5)ZV0!]BJ6N0"#?STE>]K-#?+R!(#AQ/EIVB;/AI[)UK"
MX$%)6QFXEP46KP$BHC[P9V?^&W85\0[S$8R3$%C,DBMXXT&/L<<;7]'#0)_@
M%;C) #?Q<)-WX+::KH^V+R%L:Y(S!"X+N/_>B98*FZ;?#)9=#9^H,@W\[</"
M5WRVL*E5_OC/6PI?#>CN\,*T/,=50)?4H'["8+WI1%W0$=+1"0DOR+6Y 9;"
M \\K\J=3=[3P3.O2*J722%+XO:1Z0"@[+87M-+[OX&II!I^0;DJEZ@)$TVKU
MA,[L5?@)V:6P4Z4]<L)[%?**\.D@?'I5^!UUKZ(C-:F>[SFQ=MEO4<.NHG A
M;+@1N<_B3M2=Q>(_JG\UZMOJ_^72Z@L>J%RQV1.-<\FZ3PR?J?L*F:N&A)!=
M@YI;I6_@ TS#63H-XSBF,9N&69;YB4^"Y"Q0*FH*WGIQRNGH&Q'%XD^$<T @
MV(;ZG^E]J#$;2WF[&YV,0\;2<,HR-YQ,YN$\F\%M42QZ5:@J <N2&JB3\8QC
M21M0K6NJ!MAL'&;)!%+&PB3-!C7_'XO)?$[AF1O.9P0T27\<&MV?5\[G/#]
M/$H3I\N(%#G']:M.K60T9V\64G31+$GI@W\2#/@VU_?-875X=6[[9OO#O'^R
M'K@^"!*AQI)<X]&,JD/WST _L:KUK7>O+#5R/ZSHY43M#&B_5-1N3A,78'B+
MU_\"4$L#!!0    ( /ER:U0S#Y3K;@(  " %   9    >&PO=V]R:W-H965T
M<R]S:&5E=#(Y+GAM;'U42V_;, S^*X2QPP9X]3--4B0!FG;%>NA0M-EZ&'90
M;"86*DN>)-?MOR\ENUX&M+G(I,COX\.D%IW2CZ9"M/!<"VF6065M<Q9%IJBP
M9N9$-2C)LE.Z9I94O8],HY&5'E2+*(WCTZAF7 :KA;^[U:N%:JW@$F\UF+:N
MF7Y9HU#=,DB"MXL[OJ^LNXA6BX;M\1[MS^96DQ:-+"6O41JN)&C<+8/SY&R=
M.W_O\(MC9PYD<)5LE7ITRG6Y#&*7$ HLK&-@]'G""Q3"$5$:?P?.8 SI@(?R
M&_N5KYUJV3*#%TH\\-)6RV 60(D[U@I[I[KO.-0S<7R%$L:?T/6^DSB HC56
MU0.8,JBY[+_L>>C# 6#V$2 = *G/NP_DL[QDEJT66G6@G3>Q.<&7ZM&4')?N
MI]Q;359..+OZH2Q"#E_A6CZAM$IS-/!YP[8"S9=%9"F$<XR*@6[=TZ4?T"4I
MW"AI*P/?9(GE_P01Y38FF+XEN$Z/,EYB<0)9$D(:I\D1OFPL./-\V9&"#?0%
M'J'+1[K<T^4?T-W3EI2M0%"[L84O(5RT6I,,OWT@V."SA;50Q>.?]WIZ-(1;
MRS/3L *7 >V=0?V$@6L+UEO48VO<$<,=ZV@Z+&K.A(%/D&3A))^$<1R3,@^G
MZ=S+#[0IP"4T6A5H#&3A;!Y[2TIGYJ4K+CG-50E[I4H#TW"2Y=Y =,G42QME
MF2">H6P*D>;A_'0^Q$M.PVG>*^]U.CJ8VAKUWN^F@4*UTO8#/-Z.ZW_>3_T_
M]_[MN&%ZSZ4!@3N"QB?320"ZW\=>L:KQ.[!5EC;*BQ4]8:B= ]EWBL9B4%R
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
MPW343Y*$VL/^(!VX]AVND"(JR+)+]R$OW.M1R5?NRI)V!> ^3>.,8Z&*/#]
MC1+7/B'TL!-Z^&FA.V96W!NMD11GHH)?.5ORFAM.5#ZG\.DY/Q#N&6F=%6UB
M4/$5,4%1HKZVNFQ1F7='!;^W?-MX>7M75U[1,]LIDE'HS(5A8LTM3>:3Z*5)
M^->[ZH)>"4729&&-H?"_,B_S35FJEJ1 [S$O!.\&96%ALZ%'GC'-]1%O"G71
MVC3.N(.A"PLO<A-M;(+ RPU1M7N%^][+]SQO[I_C?11Y $I:%DXX>>8"SF%A
MF,$?7=)+BW2?9IH6H?E 9U"U7]A#/-1'BVKENTH/6@Y'0=@3!AMU!AM]VF!?
M21YW8!Q7\9--Y E+*4KBP]RQ\CF7G9SX/]?Q_%A;>T950,R^72PN0)/XK3>/
M)4^99>D7YY!!_J5O';7U>=;OOG8OAZ%V1_VB\$OX(,4YS=Y2G$VU059[DY%?
MR.YT\CN;GT.PS-U\#B&>:/3RO9%[@_PR-(\,X^R0=:X?[$.\;7Q EGJ,(FQ
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
M@;Y9HFHRJXGBA6WL5ESI-M$.4]V8@S ;]/N$Z^:NGI@$3:L_^0-02P,$%
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
MD$,U3TL3&%FY[GR4!GO=#??X&H.R";B^E=BA;6 ;OGO?LU=02P,$%     @
M^7)K5&$[4C\U @  W 0  !D   !X;"]W;W)K<VAE971S+W-H965T-#,N>&UL
MC53;3MPP$/T5*^H#2)3<6$!H-])>J-H'T(I+^^Q-9C<6CAWL"0M\?<=V2+>4
M17U)/.,Y9\Y,9C+>:O-@:P!DSXU4=A+5B.U%'-NRAH;;8]V"HINU-@U',LTF
MMJT!7GE0(^,L24[CA@L5%6/O6YIBK#N40L'2,-LU#3<O,Y!Z.XG2Z,UQ(S8U
M.D=<C%N^@5O ^W9IR(H'EDHTH*S0BAE83Z)I>C'/7;P/^"E@:W?.S%6RTOK!
M&3^J290X02"A1,? Z?4$<Y#2$9&,QYXS&E(ZX.[YC?V;KYUJ67$+<RU_B0KK
M270>L0K6O)-XH[??H:]GY/A*+:U_LFV(/<TC5G86==.#24$C5'CSY[X/.X#T
M= \@ZP'9>\#)'D#> WSGXJ#,E[7@R(NQT5MF7#2QN8/OC4=3-4*YKWB+AFX%
MX;"XU@ALQ+ZRI:'),/C"N*K8Y6,G6OI6R X6@%Q(R^[@&3LN#RGT_G;!#KX<
MCF,D 8XF+OMDLY LVY,LS=B55EA;=JDJJ/XFB$GY(#][DS_+/F5<0'G,\O2(
M94F6?B!H_O_PY!,Y^=#-W/.=[.6C52H%=Q-ZQ,B2$(:5>CIMM$'QVM]=:]4:
M775E,.\T<OE10T.^D<_G-O*I.$_S)"&Q3[ME_AMVEHUVPT(Y\<Z@-& V?G\L
M*W6G,#1]\ XK.O63^<X_H]4-F_:')NS]%3<;H2R3L";*Y/B,1)FP2\% W?IQ
M7&FDX?;'FGX_8%P W:\UC61ON 3##ZWX#5!+ P04    " #Y<FM4UQ;D5>T"
M  #M"   &0   'AL+W=O<FMS:&5E=',O<VAE970T-"YX;6R-EEUOFS 4AO^*
MA7;12FGYAJ1*(BU)]R&M6]2LV[4+)E@UF-HF:??K=PP$)0*2WB38/N_Q\]K&
MA^F>BQ>9$J+06\9R.3-2I8H[TY112C(L;WE!<AA)N,BP@J;8FK(0!,>5*&.F
M8UF!F6&:&_-IU;<6\RDO%:,Y60LDRRS#XGU!&-_/#-LX=#S2;:ITASF?%GA+
M-D0]%6L!+;/-$M.,Y)+R' F2S(S/]MURHN.K@#^4[.71,]).GCE_T8WO\<RP
M-!!A)%(Z X:_'5D2QG0BP'AM<AKME%IX_'S(_J7R#EZ>L21+SO[26*4S8VR@
MF"2X9.J1[[^1QH^O\T6<R>H7[>O8,#105$K%LT8,!!G-ZW_\UJS#D<#V!@1.
M(W ^*G ;@5L9K<DJ6RNL\'PJ^!X)'0W9]$.U-I4:W-!<[^)&"1BEH%/SGUP1
MY*,;M!9P,H1Z1SB/T?UK20O8*S4\<+4B"E,FKR'D:;-"5Y^NIZ8"(IW7C)K9
M%_7LSL#L*Q+=(M<>(<=R[![Y\N-RZU1NPCJTB^&TB^%4^;R!?(N2LICF6]GG
MI);ZE52_&[NY-W$M"^;='1-?##LA<ULR]RS9 XY2Z!+U+I##+O1QUHF"(P#;
M=\(>TIY UW(G@ZQ>R^J=9?V5)#0B*"E%3E4IR&5DKT/BV&'8)>Z)L\)@$-AO
M@?VSP#\(W ,I9S&B62'XCFC.WC/@=P!\OV=E>\+L<! S:#&#LY@;GJ@]%J0/
M+.C,V(-U(>@$*FRAPK-0A]MAA-8,P[5P<DF,T%?!I1RA^UR_5FB!(2;J-1!V
M#^/8FTRZ)GH" ]L9#QH9MT;&%PZ!E%!4HC(K&58DAEH 93&BN*XV8 MG7"CZ
MK^KHLS#ND-W8CN?Z70]]D7#@_4$3D];$Y*R)WUQAAG(H_L7QK7WVY9MT+JS
M"KPN=#<.O/4<(/.H&.D/@0<LMC27B)$$E-9M""E$75SKAN)%59^>N8)J5SVF
M\#U"A Z \81#C6H:NN2U7SCS_U!+ P04    " #Y<FM44&I?S$4"  !J!0
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
M7;'/6F>UD))QE;$GA5QMQ5H"N[,6T%+"@T5!;8.,/>YP9VBEU ;%;^ZWX^%
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
M3)H-\/L&&N_^Q1@H;@(G_P%02P,$%     @ ^7)K5/*CO.;R 0  ( 0  !D
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
MR+KH32>RDMC@=F9S#70CUK.8;-_K4RGZ,]O]?[6=ELON3MH[Y_ZY"1@@70?
M9'?[^(9))C8L8WYO$Z4G!M?0P$\A0?E[#SE^W88^0? 06]G+27LO;PL>^D>C
M@U:<\H^LP)\2V+*#DA?OH-^YX3H<TC.%SLPD98<D';.%_V#/94.JZQC6(<D.
M]I^4#YU$^;!<C;6T,_.JPP=LX6->/:L1&XTQ.<[.FDF&:5BD(3?+=D[:V_ES
M3L^D.J3 >KA205B5:YYDD)(QD-,9PTN?GTEU>.%4QTV+3K%#J"4E(,^<<;S@
M&;K#M='N$$V&^A1=NZD'>X/EB(E5.M&7R-5!ST:JQ=/B7X-I.BL_>GZ%W\RS
MV7]I)OLKX@,5*SC.H) ]@$GCW($U$-ET/[M1?)V.K^^Y4CQ*+WU&/2:T /S^
MP+G:W>@7%/^Q3/X%4$L#!!0    ( /ER:U1"Z:>F?0,  +8,   9    >&PO
M=V]R:W-H965T<R]S:&5E=#4S+GAM;+67WV_;-A#'_Q5"&- 66"U1/YW"-I X
MV;J';$&#;@_#'FCI;!&A1)6DX^2_'TDILBS+LM=M>8A$ZN[XN:]$WGFVX^))
MY@ *O12LE',G5ZKZY+HRS:$@<L(K*/63-1<%47HH-JZL!)#,.A7,]3TO=@M"
M2V<QLW,/8C'C6\5H"0\"R6U1$/%Z XSOY@YVWB:^T$VNS(2[F%5D X^@OE8/
M0H_<-DI&"R@EY242L)X[U_C3$D?&P5K\3F$G._?(I++B_,D,?LGFCF>(@$&J
M3 BB+\^P!,9,),WQK0GJM&L:Q^[]6_2?;/(ZF161L.3L#YJI?.Y,'93!FFR9
M^L)WGZ%)R *FG$G['^UJVT0;IUNI>-$X:X*"EO65O#1"=!QP?,+!;QS\OD-X
MPB%H' *;:$UFT[HEBBQF@N^0,-8ZFKFQVEAOG0TMS6M\5$(_I=I/+7[E"A#V
MT$?TF!,!.6<9"/D.W7W;4O5JIA5/G]!OE17]VHANYM_?@B*4R0_:X@?D(FF<
MY<Q5&LD$=M-F^9MZ>?_$\MA'][Q4N41W90;980!7Y](FY+\E=../1KR%=(("
M_"/R/1\/ "TO=_=&<()6W\#&"T_$JX632.\@J4B9T7*#WM.R$>S#D&)UP-@&
M-+OP>1'%TR34-,_=/([-<.#'(0Y;NP/@L 4.OPLXXXP1(5$%HH8?9*]C)QVH
M8!+Z/?)C(W\RC8>QHQ8[&L6^>P&14@G9.76C(]D^XB ,K\(>Y(!=$B5Q<D+>
MN.6,_P'G9:+& Z+BI,=[;.1/XA.P20N;C,(N29GJ S=SX:6B0E]UV5@#5>=5
M3H[5B_5?C_G8RAL&GK; TW\#?)G<TP&YX_XW7!M%Y]&O6O2K__J@N#J2+_23
M:-H_*([->N?) 2_V]I7#^Q]/BB;XH<Q1#WW0J'.>'))W:AZ^B!SJS4A6#,YI
MW43LJAC@*)H&)UC\/8O_72P7JN@/"92<@-H7+3Q>M>Z*BO%7 (GT>T6W>BNE
MBFN8/^^A6('X:Z0PXGVAP>.5YF=!2K,S%4=PL%[6KG?NI80C!TCS!8V9'(+O
M2PT>KS47@E_X!J.1DZ3)8<RDSL'M=( %B(UMC"5*^;94=>_4SK;-][5M.7OS
M-Z8IMYWE/DS=T=\3L:'Z0V6PUB&]2:)Y1-TDUP/%*]MGKKC27:N]S?4/"Q#&
M0#]?<]UK-@.S0/M39?$W4$L#!!0    ( /ER:U1(&8NU*P,  ,D)   9
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
MQ-6G]&6&P]'0<13U2SW?IEX0AFY=[U-B?I68WYO8 Z/7:L6.BG"; <J!9,+
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
MBXW'#_?8Z4&[ [B_5=@NNHGK/OVWHWP%4$L#!!0    ( /ER:U1)*<Q030,
M !T+   9    >&PO=V]R:W-H965T<R]S:&5E=#8P+GAM;+56VX[;-A#]%4)H
MD01P+5*^[0:V 5_2M \NC&S2/@1]H*6Q140B'9):[_Y]AY0L:V-;&VS2%YN7
MF3/G#$7.C ]*?S$I@"4/>2;-)$BMW;\-0Q.GD'/357N0N+-5.N<6IWH7FKT&
MGGBG/ LC2H=ASH4,IF._MM;3L2IL)B2L-3%%GG/].(=,'28!"XX+'\0NM6XA
MG([W? =W8#_MUQIG88V2B!RD$4H2#=M),&-O%ZSG'+S%WP(.IC$F3LI&J2]N
M\F<R":AC!!G$UD%P_+N'!6290T(>7RO0H([I')OC(_KO7CR*V7 #"Y7](Q*;
M3H*;@"2PY45F/ZC#'U )&CB\6&7&_Y)#94L#$A?&JKQR1@:YD.4_?Z@2T7!@
MPRL.4>40?>O0O^+0JQQ\YL*2F9>UY)9/QUH=B';6B.8&/C?>&]4(Z8[QSFK<
M%>AGIW\I"X3UR6_D7;[/U", F8.$K;!DG7%IR.LE6"XR0S["@RUX]@9-/]TM
MR>M?WHQ#BPP<3AA7T>9EM.A*-!:1E9(V->2=3"!Y"A B]9I_=.0_CUH1EQ!W
M28]U2$0C=H'0XOO=:0N=7IW.GL?K7\7;XDI"%JA2BTWA/U67R Y9\0>1%SF9
M28EI?&)AR!IT?0 =-XM!VDOY;0_/HBZEO[;HZ-<Z^B_54='49"E,K,'MX/U_
M:CG+57&9?QEVX,.Z)^9^.NA1BJF_;Q[:N55_T+1ZHFE0:QJT:IHK69AC;O&)
MND2O'6'P3':'-9-A*\XLCG6!V?6,P'3(HM#ZRH$/SU+!Z/!"RDJ[8<,N&H[H
MU:2-:JJC5JIK#48DR(U\7D&^ ?UOB_Z;&O3F^9,XW8B/*09)599<TG]SIHM1
M>EW7;4WA]J<=P>WYU]@?G9_ N5DK4T9/3S1MY8KUJGX<3..BR1UAQ^^9J"UY
MKY7!EY5KB5OF>PZ,-<H$^^$'8<5MG#I63:-.DV&MXE5%=LT?+U:1=C*T.VB]
MARPZR8I>FMJ(6(7UZL?R>ZH;[,6%X__([S-EY-H[%S8:C1STSO=?AL3NM2]K
M=KU:]W@SW]E\LSYWO9]O8$XP9>.XXGHGL")FL$5(VAWAA=)E+U9.K-K[=F:C
M+#9'?IAB_PK:&>#^5F%+4TU<@+HCGOX'4$L#!!0    ( /ER:U3]SS IA (
M %T&   9    >&PO=V]R:W-H965T<R]S:&5E=#8Q+GAM;+U574_;,!3]*U?1
M'IC$R$=I8"B-E+:;A@0;:F%[=I.;Q,*Q.]MIR[^?[82LC%+QM)?&'_>>>\ZQ
M?9MLA7Q4-:*&7<.XFGBUUNLKWU=YC0U19V*-W.R40C9$FZFL?+662 J7U# _
M"H+8;PCE7IJXM3N9)J+5C'*\DZ#:IB'R:8I,;"=>Z#TO+&A5:[O@I\F:5+A$
M_;"^DV;F#R@%;9 K*CA(+"=>%E[-8AOO GY2W*J],5@E*R$>[>2ZF'B!)80,
M<VT1B/EL<(:,62!#XW>/Z0TE;>+^^!G]J]-NM*R(PIE@OVBAZXEWZ4&!)6F9
M7HCM-^SUC"U>+IARO[#M8N/ @[Q56C1]LF'04-Y]R:[W82\A"M](B/J$Z+T)
MHSYAY(1VS)RL.=$D3:38@K31!LT.G#<NVZBAW)[B4DNS2TV>3K\+C1".X1-D
MUE"JGT"4,&V5B5,*EEB9(],*3N:H"64*[G&G6\(^)KXVY2V(G_>EIEVIZ(U2
M802W@NM:P1=>8/$2P#>\!_+1,_EI=!1QCOD9C,)3B((H?%C.X>3#(5ZS]Z,$
M!U%>D!L-SHX<[/E;SK;-"J5U\\<:)=&45X.=A\SKT&*'9M_>)HT2?W. P/E
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
M/K)2=7-23XRL7'V?2X/=@ANNL*$#90UP?R'Q3C83>T#;(HY_ U!+ P04
M" #Y<FM4]/3FM5<#  "J"P  &0   'AL+W=O<FMS:&5E=',O<VAE970V-"YX
M;6RU5MMNXS80_15"Z,,NT(U$W6PO; .^I&V 31#$2?M0](&VQK*P$JF2=+SY
M^PXI199C6=@"R8LM4F?.S)P9C&9\$/*[V@%H\J/(N9HX.ZW+KZZK-CLHF+H2
M)7!\LQ6R8!J/,G55*8$EUJC(7=_S8K=@&7>F8WMW+Z=CL==YQN%>$K4O"B9?
MYI"+P\2ASNO%0Y;NM+EPI^.2I; "_53>2SRY#4N2%<!5)CB1L)TX,_IU06-C
M8!%_9G!0K6=B4ED+\=T<;I*)XYF(((>--A0,_YYA 7ENF#".?VM2I_%I#-O/
MK^R_V>0QF353L!#Y7UFB=Q-GZ) $MFR?ZP=Q^ /JA"+#MQ&YLK_D4&,]AVSV
M2HNB-L8(BHQ7_^Q'+43+ !/M-O!K _^M07C!(*@- IMH%9E-:\DTFXZE.!!I
MT,AF'JPVUAJSR;@IXTI+?)NAG9[>"0V$1N0+F1E!,_U"Q);,]PIQ2I$5I%@S
MK?#]0G E\BQA&A)RAPVV8CDHPGA"O@F>?LFQ' F9*86O;GC58*90ZQ?R.XA4
MLG*7;<@,>XU\6H)F6:X^(^T#E$)JMLZA!6,YNBM*P:WOOV^A6(/\!]%/JR7Y
M],OGL:LQ=Y.!NZGSG%=Y^A?RI#ZY%5SO%+GF"22G!"Z*UBCGORHW]WL9E["Y
M(@']E?B>3SL"6OR\N=<33M 4,K!\P:5"HNS*5@0%3X^"2TBQ"CT.PL9!:!V$
M%QR<U-]ZZJI"Q1%9#C-"GJ?Q, X&GH<Y/K?5.0=2SS>X%O(DSJB),^H5HM6,
MS#3C_Q8D;AS%/R](_M9KES@57]P6QXO#<VW.<6$0!1>5&30!#WH#?KJ[>;Q>
MDM7C[/%ZU2/ L.$;?DS+C1H'HW=HN=&YJM$P[)#U'#CRPE%T45?J'8>H][$]
M1UOSFKYSU]6$)^T4^\&Y/AU ?S <7-;'/P;M]P9]PS5(;K\'.-JK<=ZGQG'H
MT0^:>O0X]NA[S+V:Y%2[49?(YT#J^UY/%QX''_W@R4>/HX^^]^RK"4\&?AC2
M#H$Z@%$<G^OCMK:> F1JET%%-F+/=?49;VZ;A7-FUZPW]W.SB-IMZDA3;;&W
M3*895R2'+5)Z5P.,2E:+8770HK2[U5IHW-3LXPZ7:9 &@.^W O>K^F <-.OY
M]#]02P,$%     @ ^7)K5#1/6P?2 @  M0@  !D   !X;"]W;W)K<VAE971S
M+W-H965T-C4N>&ULK59=;]HP%/TK5K2'5NH:)X% *T!J81]]:(>*NCU,>S#D
M E8=.[5-::7]^%V;-$T5Z-#&2^*/>T[./?ZXZ:V5OC=+ $N><B%-/UA:6YR'
MH9DM(6?F5!4@<6:N=,XL=O4B-(4&EGE0+L*8TC3,&9?!H.?'QGK04RLKN(2Q
M)F:5YTP_7X)0ZWX0!2\#MWRQM&X@'/0*MH )V+MBK+$75BP9ST$:KB31,.\'
M%]'Y,*(.X".^<UB;6INX5*9*W;O.5=8/J%,$ F;643!\/<(0A'!,J..A) VJ
M;SI@O?W"_MDGC\E,F8&A$C]X9I?]H!N0#.9L)>RM6G^%,J&VXYLI8?R3K,M8
M&I#9REB5EV!4D'.Y>;.GTH@:(&KM ,0E(-X7D)2 Q">Z4>;3&C'+!CVMUD2[
M:&1S#>^-1V,V7+IEG%B-LQQQ=G"C+)"H33Z2"V<HM\]$S<GERF"<,60""UPS
M:W!^J*11@F?,0D9N<(.--6XFC0 F,_+I8<4+%WI"OBB5K;D0?OQ*6B87?"J
M7!@#R'0T LNX,,?(>3<9D:,/Q[W08BI.4#@K95]N9,<[9(]@=DJ2Z(3$-(ZV
MP(?[P^E;>(@&5B[&E8NQYVOMX'OC#?-Y;LMI0]+V).Y\/0[2*,8#AQ(>Z^*;
M<:U6U*['O5&95"J3=U5^P^5BELO%Z[+^O(9\"OK7.QZT*O;6(3S8D*2UW-HT
M.FMZT(Q+XJ2[TX-VI;+]KQZ0W[CON<C\Y*HHQ/,^]J35A]-#V),VTTXI;=K3
MC(NZ--UI3Z=2V?D/>T;<%,HP=YCQ\%OP5S"Y* JF0>QC5K>2T3V$6=VF":UM
M>VE;7!+O-.NL4GGV%Y6Z4&@7G) ;)3^6CNWC0T1?KV=Z""=*EOJ5$44T:5JQ
M-;#3:7H1UFJ**^C73"^X-$3 ')'TM(,4>E,C-QVK"E]FILIBT?+-)?Y7@'8!
M.#]7N&/*CJM<U9_*X ]02P,$%     @ ^7)K5(Y8G;^D @  9@<  !D   !X
M;"]W;W)K<VAE971S+W-H965T-C8N>&ULM57;CMHP$/T5*VJE76F77(!0K0")
M2ZM6ZE8(=MN'J@\F&8B%8U/; 5KUXSMV0LJN(.I*[4M\FW/FS&0\[N^EVN@,
MP)!#SH4>>)DQVSO?UTD&.=4MN06!)RNI<FIPJ=:^WBJ@J0/EW(^"(/9SRH0W
M[+N]F1KV96$X$S!31!=Y3M6/,7"Y'WBA=]R8LW5F[(8_[&_I&A9@'K<SA2N_
M9DE9#D(S*8B"U< ;A7>3GK5W!I\9[/7)G-A(EE)N[.)#.O "*P@X),8R4!QV
M, '.+1'*^%YQ>K5+"SR=']G?N=@QEB75,)'\"TM--O#>>"2%%2VXF<O]>ZCB
MZ5J^1'+MOF1?VL9HG!3:R+P"HX*<B7*DARH/)X PO@"(*D#T'-"Y &A7@+8+
MM%3FPII20X=])?=$66MDLQ.7&X?&:)BP?W%A%)XRQ)GA)VF A#&Y)1,I$A!&
M49=>N2)SIC?D:@J&,J[) QQ,0?DU6CXNIN3JU77?-RC TOA)Y6Q<.HLN. LC
M<B^%R31Y*U)(GQ+XJ+R6'QWECZ-&QBDD+=(.;T@41.$909._AP<-<MIU-MN.
MKW.1;VG( I)",<- WY#1#I-'EQQN\<+=:LKAALR!<O834O)1:GU.<^FCZWS8
M6[@;QG@I4=_NC+1.+:W3*&V4)+(01J/[!-C.:B)?[R%?@OI&?I&)*S50S\K
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
M=_RDWG7XVI=Z[?E>XT]!/TGU<+ZW7!]_67Z?1)P7%YS3;45]^@M02P,$%
M  @ ^7)K5-9((R[W 0  *R@  !,   !;0V]N=&5N=%]4>7!E<UTN>&ULS=K+
M3L,P$ 707ZFR18WK)P_1;H ML. '3#*E49/8LETH?X^3 A((*E"1N)M&K>VY
M$X]T5CV_>_84)]NN[>.\6*7DSQB+U8HZ&TOGJ<\K2Q<ZF_+7\,"\K=;V@9B8
MS0RK7)^H3],TU"@6YY>TM)LV3:ZV^>?8N'Y>!&IC,;G8;1RRYH7UOFTJF_(Z
M>^SK3RG3UX0RGQSWQ%7CXU'>4+ O$X:5[P->S]T\4@A-39-;&]*U[?(NMFU9
M3,\MQ7)_B2]Z=,ME4U'MJDV7CY31![)U7!&EKBUW18_V)Z=\P[3[Y ?GCV7V
M!>:=M\'YF"<6Z/=Q;R,93D]]+D0A-?M?\3TQES[X_6B8=DWU#[/S]3ZYL![G
M$=GX./R./\[XO?XO^Q @?4B0/A1('QJD#P/2QS%('R<@?9R"],%G*(V@B,I1
M2.4HIG(45#F*JAR%58[B*D>!E:/(*E!D%2BR"A19!8JL D56@2*K0)%5H,@J
M4&05*+)*%%DEBJP215:)(JM$D56BR"I19)4HLDH4626*K I%5H4BJT*15:'(
MJE!D52BR*A19%8JL"D56A2*K1I%5H\BJ4635*+)J%%DUBJP:15:-(JM&D56C
MR&I09#4HLAH460V*K 9%5H,BJT&1U:#(:E!D-?\IZ[USZS^.'Y]E9YO^+9^-
M_Q%<O !02P$"% ,4    " #Y<FM4!T%-8H$   "Q    $
M@ $     9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    ( /ER:U3CM76L[@
M "L"   1              "  :\   !D;V-0<F]P<R]C;W)E+GAM;%!+ 0(4
M Q0    ( /ER:U297)PC$ 8  )PG   3              "  <P!  !X;"]T
M:&5M92]T:&5M93$N>&UL4$L! A0#%     @ ^7)K5%RY/(P(!@  WQD  !@
M             ("!#0@  'AL+W=O<FMS:&5E=',O<VAE970Q+GAM;%!+ 0(4
M Q0    ( /ER:U2M](CNRP4  #X7   8              " @4L.  !X;"]W
M;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4    " #Y<FM4]#QP#6X"  !-
M!@  &               @(%,%   >&PO=V]R:W-H965T<R]S:&5E=#,N>&UL
M4$L! A0#%     @ ^7)K5#KZRR;1!   JQ$  !@              ("!\!8
M 'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4 Q0    ( /ER:U2FY/G
M?P0  /\2   8              " @?<;  !X;"]W;W)K<VAE971S+W-H965T
M-2YX;6Q02P$"% ,4    " #Y<FM4J$]_["4&  "#&   &
M@(&L(   >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL4$L! A0#%     @ ^7)K
M5)&7_**>!   .0H  !@              ("!!R<  'AL+W=O<FMS:&5E=',O
M<VAE970W+GAM;%!+ 0(4 Q0    ( /ER:U2,RA-8H@X  &XE   8
M      " @=LK  !X;"]W;W)K<VAE971S+W-H965T."YX;6Q02P$"% ,4
M" #Y<FM4U9DX&4T"   '!0  &               @(&S.@  >&PO=V]R:W-H
M965T<R]S:&5E=#DN>&UL4$L! A0#%     @ ^7)K5%#T7&." @  3P4  !D
M             ("!-CT  'AL+W=O<FMS:&5E=',O<VAE970Q,"YX;6Q02P$"
M% ,4    " #Y<FM45*\"R/\"  "R!@  &0              @('O/P  >&PO
M=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0    ( /ER:U2$[S699P,
M  T(   9              " @25#  !X;"]W;W)K<VAE971S+W-H965T,3(N
M>&UL4$L! A0#%     @ ^7)K5*FK2ZFR!   E@H  !D              ("!
MPT8  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q02P$"% ,4    " #Y<FM4
M/_/6@YT"  #D!0  &0              @(&L2P  >&PO=V]R:W-H965T<R]S
M:&5E=#$T+GAM;%!+ 0(4 Q0    ( /ER:U3:\8K%5@(  /0$   9
M      " @8!.  !X;"]W;W)K<VAE971S+W-H965T,34N>&UL4$L! A0#%
M  @ ^7)K5$V,4@&%!0  "PX  !D              ("!#5$  'AL+W=O<FMS
M:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4    " #Y<FM4;;Q;[!P$  "%"0
M&0              @(')5@  >&PO=V]R:W-H965T<R]S:&5E=#$W+GAM;%!+
M 0(4 Q0    ( /ER:U1?E(2 NP(  %D&   9              " @1Q;  !X
M;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#%     @ ^7)K5,M9=H@5
M @  AP0  !D              ("!#EX  'AL+W=O<FMS:&5E=',O<VAE970Q
M.2YX;6Q02P$"% ,4    " #Y<FM4/>2.@D@"   /!0  &0
M@(%:8   >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM;%!+ 0(4 Q0    ( /ER
M:U0?&><_)@4  !\-   9              " @=EB  !X;"]W;W)K<VAE971S
M+W-H965T,C$N>&UL4$L! A0#%     @ ^7)K5+D7WNN5!   Y0H  !D
M         ("!-F@  'AL+W=O<FMS:&5E=',O<VAE970R,BYX;6Q02P$"% ,4
M    " #Y<FM4*,,< U("   2!0  &0              @($";0  >&PO=V]R
M:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    ( /ER:U2ABW'2$ (  *,$
M   9              " @8MO  !X;"]W;W)K<VAE971S+W-H965T,C0N>&UL
M4$L! A0#%     @ ^7)K5.F&&?F? @  Y04  !D              ("!TG$
M 'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"% ,4    " #Y<FM49%M+
M7$("  #N!   &0              @(&H=   >&PO=V]R:W-H965T<R]S:&5E
M=#(V+GAM;%!+ 0(4 Q0    ( /ER:U0^DL9-G1   +$T   9
M  " @2%W  !X;"]W;W)K<VAE971S+W-H965T,C<N>&UL4$L! A0#%     @
M^7)K5'PF-;1I P  EP<  !D              ("!]8<  'AL+W=O<FMS:&5E
M=',O<VAE970R."YX;6Q02P$"% ,4    " #Y<FM4,P^4ZVX"   @!0  &0
M            @(&5BP  >&PO=V]R:W-H965T<R]S:&5E=#(Y+GAM;%!+ 0(4
M Q0    ( /ER:U2NM!_#P@(  .<%   9              " @3J.  !X;"]W
M;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#%     @ ^7)K5.22*-/" @
M_08  !D              ("!,Y$  'AL+W=O<FMS:&5E=',O<VAE970S,2YX
M;6Q02P$"% ,4    " #Y<FM4;O+.=FP"  !+!0  &0              @($L
ME   >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+ 0(4 Q0    ( /ER:U1G
ML(6#90,  )T(   9              " @<^6  !X;"]W;W)K<VAE971S+W-H
M965T,S,N>&UL4$L! A0#%     @ ^7)K5'-P?T+^ P  X@D  !D
M     ("!:YH  'AL+W=O<FMS:&5E=',O<VAE970S-"YX;6Q02P$"% ,4
M" #Y<FM42U+G,78"   Z!0  &0              @(&@G@  >&PO=V]R:W-H
M965T<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    ( /ER:U09/'HB+00  +D+   9
M              " @4VA  !X;"]W;W)K<VAE971S+W-H965T,S8N>&UL4$L!
M A0#%     @ ^7)K5';[)NI8 @  +04  !D              ("!L:4  'AL
M+W=O<FMS:&5E=',O<VAE970S-RYX;6Q02P$"% ,4    " #Y<FM4(BEJ]LH#
M   C#   &0              @(% J   >&PO=V]R:W-H965T<R]S:&5E=#,X
M+GAM;%!+ 0(4 Q0    ( /ER:U0F;V2F[P(  /8+   9              "
M@4&L  !X;"]W;W)K<VAE971S+W-H965T,SDN>&UL4$L! A0#%     @ ^7)K
M5&%JYPQ< P  Q D  !D              ("!9Z\  'AL+W=O<FMS:&5E=',O
M<VAE970T,"YX;6Q02P$"% ,4    " #Y<FM4#TG(RU8"  #<!0  &0
M        @('ZL@  >&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM;%!+ 0(4 Q0
M   ( /ER:U3L5$FQ0P(  .L%   9              " @8>U  !X;"]W;W)K
M<VAE971S+W-H965T-#(N>&UL4$L! A0#%     @ ^7)K5&$[4C\U @  W 0
M !D              ("! ;@  'AL+W=O<FMS:&5E=',O<VAE970T,RYX;6Q0
M2P$"% ,4    " #Y<FM4UQ;D5>T"  #M"   &0              @(%MN@
M>&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4 Q0    ( /ER:U10:E_,
M10(  &H%   9              " @9&]  !X;"]W;W)K<VAE971S+W-H965T
M-#4N>&UL4$L! A0#%     @ ^7)K5)P G$/- @   P@  !D
M ("!#<   'AL+W=O<FMS:&5E=',O<VAE970T-BYX;6Q02P$"% ,4    " #Y
M<FM4F-DM7RH"   F!0  &0              @($1PP  >&PO=V]R:W-H965T
M<R]S:&5E=#0W+GAM;%!+ 0(4 Q0    ( /ER:U0P4^3]%04  !44   9
M          " @7+%  !X;"]W;W)K<VAE971S+W-H965T-#@N>&UL4$L! A0#
M%     @ ^7)K5/*CO.;R 0  ( 0  !D              ("!OLH  'AL+W=O
M<FMS:&5E=',O<VAE970T.2YX;6Q02P$"% ,4    " #Y<FM4-P3/(CX"  "C
M!0  &0              @('GS   >&PO=V]R:W-H965T<R]S:&5E=#4P+GAM
M;%!+ 0(4 Q0    ( /ER:U1#0X,]/0(  +0%   9              " @5S/
M  !X;"]W;W)K<VAE971S+W-H965T-3$N>&UL4$L! A0#%     @ ^7)K5+O1
MOFGA!0  ;QD  !D              ("!T-$  'AL+W=O<FMS:&5E=',O<VAE
M970U,BYX;6Q02P$"% ,4    " #Y<FM40NFGIGT#  "V#   &0
M    @('HUP  >&PO=V]R:W-H965T<R]S:&5E=#4S+GAM;%!+ 0(4 Q0    (
M /ER:U1(&8NU*P,  ,D)   9              " @9S;  !X;"]W;W)K<VAE
M971S+W-H965T-30N>&UL4$L! A0#%     @ ^7)K5%8QK 15 @  !08  !D
M             ("!_MX  'AL+W=O<FMS:&5E=',O<VAE970U-2YX;6Q02P$"
M% ,4    " #Y<FM4_K6AZ$T#  !B"@  &0              @(&*X0  >&PO
M=V]R:W-H965T<R]S:&5E=#4V+GAM;%!+ 0(4 Q0    ( /ER:U1+T0UT(@,
M &D)   9              " @0[E  !X;"]W;W)K<VAE971S+W-H965T-3<N
M>&UL4$L! A0#%     @ ^7)K5 [%^;S" @  X@<  !D              ("!
M9^@  'AL+W=O<FMS:&5E=',O<VAE970U."YX;6Q02P$"% ,4    " #Y<FM4
MP!AW]%8"  !'!@  &0              @(%@ZP  >&PO=V]R:W-H965T<R]S
M:&5E=#4Y+GAM;%!+ 0(4 Q0    ( /ER:U1)*<Q030,  !T+   9
M      " @>WM  !X;"]W;W)K<VAE971S+W-H965T-C N>&UL4$L! A0#%
M  @ ^7)K5/W/,"F$ @  708  !D              ("!<?$  'AL+W=O<FMS
M:&5E=',O<VAE970V,2YX;6Q02P$"% ,4    " #Y<FM4BR)>*:0"   !!P
M&0              @($L]   >&PO=V]R:W-H965T<R]S:&5E=#8R+GAM;%!+
M 0(4 Q0    ( /ER:U0Z)N:X-P,  "X*   9              " @0?W  !X
M;"]W;W)K<VAE971S+W-H965T-C,N>&UL4$L! A0#%     @ ^7)K5/3TYK57
M P  J@L  !D              ("!=?H  'AL+W=O<FMS:&5E=',O<VAE970V
M-"YX;6Q02P$"% ,4    " #Y<FM4-$];!]("  "U"   &0
M@($#_@  >&PO=V]R:W-H965T<R]S:&5E=#8U+GAM;%!+ 0(4 Q0    ( /ER
M:U2.6)V_I (  &8'   9              " @0P! 0!X;"]W;W)K<VAE971S
M+W-H965T-C8N>&UL4$L! A0#%     @ ^7)K5 --$V6[ @  A H  !D
M         ("!YP,! 'AL+W=O<FMS:&5E=',O<VAE970V-RYX;6Q02P$"% ,4
M    " #Y<FM4#@JZZP$"  !J!   &0              @('9!@$ >&PO=V]R
M:W-H965T<R]S:&5E=#8X+GAM;%!+ 0(4 Q0    ( /ER:U1PK=S#(P0  ,4/
M   9              " @1$) 0!X;"]W;W)K<VAE971S+W-H965T-CDN>&UL
M4$L! A0#%     @ ^7)K5!:AP],! P  B0\   T              ( !:PT!
M 'AL+W-T>6QE<RYX;6Q02P$"% ,4    " #Y<FM4EXJ[',     3 @  "P
M            @ &7$ $ 7W)E;',O+G)E;'-02P$"% ,4    " #Y<FM4.V\"
M+U4%   B+@  #P              @ & $0$ >&PO=V]R:V)O;VLN>&UL4$L!
M A0#%     @ ^7)K5)=W<N0L @  ]B@  !H              ( ! A<! 'AL
M+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%     @ ^7)K5-9((R[W
M 0  *R@  !,              ( !9AD! %M#;VYT96YT7U1Y<&5S72YX;6Q0
52P4&     $T 30 2%0  CAL!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>84
<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>85
<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>86
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.22.0.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>108</ContextCount>
  <ElementCount>375</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>45</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>7</UnitCount>
  <MyReports>
    <Report instance="apt20211231_10k.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/20211231/role/statement-document-and-entity-information</Role>
      <ShortName>Document And Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>001 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>002 - Statement - Consolidated Balance Sheets (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals</Role>
      <ShortName>Consolidated Balance Sheets (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>003 - Statement - Condensed Consolidated Statements of Comprehensive Income (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited</Role>
      <ShortName>Condensed Consolidated Statements of Comprehensive Income (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>004 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited</Role>
      <ShortName>Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>005 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>006 - Disclosure - Note 1 - The Company</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-1-the-company</Role>
      <ShortName>Note 1 - The Company</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>007 - Disclosure - Note 2 - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies</Role>
      <ShortName>Note 2 - Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>008 - Disclosure - Note 3 - Investments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-3-investments</Role>
      <ShortName>Note 3 - Investments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>009 - Disclosure - Note 4 - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-4-inventories</Role>
      <ShortName>Note 4 - Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>010 - Disclosure - Note 5 - Property and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment</Role>
      <ShortName>Note 5 - Property and Equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>011 - Disclosure - Note 6 - Goodwill and Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets</Role>
      <ShortName>Note 6 - Goodwill and Intangible Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>012 - Disclosure - Note 7 - Equity Investments in Unconsolidated Affiliate</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate</Role>
      <ShortName>Note 7 - Equity Investments in Unconsolidated Affiliate</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>013 - Disclosure - Note 8 - Accrued Liabilities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities</Role>
      <ShortName>Note 8 - Accrued Liabilities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>014 - Disclosure - Note 9 - Notes Payable</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable</Role>
      <ShortName>Note 9 - Notes Payable</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>015 - Disclosure - Note 10 - Shareholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity</Role>
      <ShortName>Note 10 - Shareholders' Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>016 - Disclosure - Note 11 - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes</Role>
      <ShortName>Note 11 - Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>017 - Disclosure - Note 12 - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-12-leases-</Role>
      <ShortName>Note 12 - Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>018 - Disclosure - Note 13 - Legal</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-13-legal</Role>
      <ShortName>Note 13 - Legal</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>019 - Disclosure - Note 14 - Employee Benefit Plans</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans</Role>
      <ShortName>Note 14 - Employee Benefit Plans</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>020 - Disclosure - Note 15 - Activity of Business Segments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments</Role>
      <ShortName>Note 15 - Activity of Business Segments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>021 - Disclosure - Note 16 - Concentration of Risk</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-</Role>
      <ShortName>Note 16 - Concentration of Risk</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>022 - Disclosure - Note 17 - Employment Agreements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements</Role>
      <ShortName>Note 17 - Employment Agreements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>023 - Disclosure - Note 18 - Related Party Transactions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-18-related-party-transactions</Role>
      <ShortName>Note 18 - Related Party Transactions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>024 - Disclosure - Note 19 - Out-of-Period Adjustment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-</Role>
      <ShortName>Note 19 - Out-of-Period Adjustment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>025 - Disclosure - Note 20 - Subsequent Events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-20-subsequent-events</Role>
      <ShortName>Note 20 - Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>026 - Disclosure - Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies</Role>
      <ShortName>Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>027 - Disclosure - Note 2 - Summary of Significant Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables</Role>
      <ShortName>Note 2 - Summary of Significant Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>028 - Disclosure - Note 4 - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-tables</Role>
      <ShortName>Note 4 - Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-4-inventories</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>029 - Disclosure - Note 5 - Property and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-tables</Role>
      <ShortName>Note 5 - Property and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>030 - Disclosure - Note 6 - Goodwill and Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables</Role>
      <ShortName>Note 6 - Goodwill and Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>031 - Disclosure - Note 8 - Accrued Liabilities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables</Role>
      <ShortName>Note 8 - Accrued Liabilities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>032 - Disclosure - Note 10 - Shareholders' Equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-tables</Role>
      <ShortName>Note 10 - Shareholders' Equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>033 - Disclosure - Note 11 - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables</Role>
      <ShortName>Note 11 - Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>034 - Disclosure - Note 12 - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables</Role>
      <ShortName>Note 12 - Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-12-leases-</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>035 - Disclosure - Note 15 - Activity of Business Segments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables</Role>
      <ShortName>Note 15 - Activity of Business Segments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>036 - Disclosure - Note 16 - Concentration of Risk (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-tables</Role>
      <ShortName>Note 16 - Concentration of Risk (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>037 - Disclosure - Note 2 - Summary of Significant Accounting Policies (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual</Role>
      <ShortName>Note 2 - Summary of Significant Accounting Policies (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>038 - Disclosure - Note 2 - Summary of Significant Accounting Policies - Property and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details</Role>
      <ShortName>Note 2 - Summary of Significant Accounting Policies - Property and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>039 - Disclosure - Note 2 - Summary of Significant Accounting Policies - 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/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details</Role>
      <ShortName>Note 2 - Summary of Significant Accounting Policies - Reconciliation of Net Income and Number of Shares Used in Computations of Basic and Diluted EPS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>040 - Disclosure - Note 3 - Investments (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual</Role>
      <ShortName>Note 3 - Investments (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-3-investments</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>041 - Disclosure - Note 4 - Inventories - Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details</Role>
      <ShortName>Note 4 - Inventories - Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>042 - Disclosure - Note 5 - Property and Equipment (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-details-textual</Role>
      <ShortName>Note 5 - Property and Equipment (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-tables</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>043 - Disclosure - Note 5 - Property and Equipment - Property and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details</Role>
      <ShortName>Note 5 - Property and Equipment - Property and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>044 - Disclosure - Note 6 - Goodwill and Intangible Assets (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-details-textual</Role>
      <ShortName>Note 6 - Goodwill and Intangible Assets (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>045 - Disclosure - Note 6 - Goodwill and Intangible Assets - Definite-lived Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details</Role>
      <ShortName>Note 6 - Goodwill and Intangible Assets - Definite-lived Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>046 - Disclosure - Note 6 - Goodwill and Intangible Assets - Estimated Future Amortization Expense Related to Definite-lived Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details</Role>
      <ShortName>Note 6 - Goodwill and Intangible Assets - Estimated Future Amortization Expense Related to Definite-lived Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>047 - Disclosure - Note 7 - Equity Investments in Unconsolidated Affiliate (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual</Role>
      <ShortName>Note 7 - Equity Investments in Unconsolidated Affiliate (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate</ParentRole>
      <Position>48</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>048 - Disclosure - Note 8 - Accrued Liabilities (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-details-textual</Role>
      <ShortName>Note 8 - Accrued Liabilities (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>049 - Disclosure - Note 8 - Accrued Liabilities - Accrued Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details</Role>
      <ShortName>Note 8 - Accrued Liabilities - Accrued Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>050 - Disclosure - Note 9 - Notes Payable (Details Textual)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual</Role>
      <ShortName>Note 9 - Notes Payable (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable</ParentRole>
      <Position>51</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>051 - Disclosure - Note 10 - Shareholders' Equity (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual</Role>
      <ShortName>Note 10 - Shareholders' Equity (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-tables</ParentRole>
      <Position>52</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>052 - Disclosure - Note 10 - Shareholders' Equity - Stock Option Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details</Role>
      <ShortName>Note 10 - Shareholders' Equity - Stock Option Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>053 - Disclosure - Note 10 - Shareholders' Equity - Information About Stock Options (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details</Role>
      <ShortName>Note 10 - Shareholders' Equity - Information About Stock Options (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>054 - Disclosure - Note 11 - Income Taxes - Provision for Income Taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details</Role>
      <ShortName>Note 11 - Income Taxes - Provision for Income Taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>055 - Disclosure - Note 11 - Income Taxes - Deferred Income Tax Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details</Role>
      <ShortName>Note 11 - Income Taxes - Deferred Income Tax Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>056 - Disclosure - Note 11 - Income Taxes - Income Tax Reconciliation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details</Role>
      <ShortName>Note 11 - Income Taxes - Income Tax Reconciliation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>057 - Disclosure - Note 12 - Leases (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual</Role>
      <ShortName>Note 12 - Leases (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables</ParentRole>
      <Position>58</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>058 - Disclosure - Note 12 - Leases - Future Minimum Lease Payment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details</Role>
      <ShortName>Note 12 - Leases - Future Minimum Lease Payment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>059 - Disclosure - Note 14 - Employee Benefit Plans (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual</Role>
      <ShortName>Note 14 - Employee Benefit Plans (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans</ParentRole>
      <Position>60</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>060 - Disclosure - Note 15 - Activity of Business Segments (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual</Role>
      <ShortName>Note 15 - Activity of Business Segments (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables</ParentRole>
      <Position>61</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>061 - Disclosure - Note 15 - Activity of Business Segments - Consolidated Net Sales (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details</Role>
      <ShortName>Note 15 - Activity of Business Segments - Consolidated Net Sales (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>062 - Disclosure - Note 15 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details</Role>
      <ShortName>Note 15 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>063 - Disclosure - Note 15 - Activity of Business Segments - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details</Role>
      <ShortName>Note 15 - Activity of Business Segments - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>064 - Disclosure - Note 15 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details</Role>
      <ShortName>Note 15 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>065 - Disclosure - Note 16 - Concentration of Risk (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual</Role>
      <ShortName>Note 16 - Concentration of Risk (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-tables</ParentRole>
      <Position>66</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>066 - Disclosure - Note 16 - Concentration of Risk - Customer Concentration (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details</Role>
      <ShortName>Note 16 - Concentration of Risk - Customer Concentration (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>067 - Disclosure - Note 17 - Employment Agreements (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual</Role>
      <ShortName>Note 17 - Employment Agreements (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements</ParentRole>
      <Position>68</Position>
    </Report>
    <Report instance="apt20211231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>068 - Disclosure - Note 19 - Out-of-Period Adjustment (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual</Role>
      <ShortName>Note 19 - Out-of-Period Adjustment (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-</ParentRole>
      <Position>69</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-K" original="apt20211231_10k.htm">apt20211231_10k.htm</File>
    <File>apt-20211231.xsd</File>
    <File>apt-20211231_cal.xml</File>
    <File>apt-20211231_def.xml</File>
    <File>apt-20211231_lab.xml</File>
    <File>apt-20211231_pre.xml</File>
    <File>ex_344002.htm</File>
    <File>ex_344003.htm</File>
    <File>ex_344004.htm</File>
    <File>ex_344006.htm</File>
    <File>ex_344007.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="508">http://fasb.org/us-gaap/2021-01-31</BaseTaxonomy>
    <BaseTaxonomy items="36">http://xbrl.sec.gov/dei/2021q4</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>89
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "apt20211231_10k.htm": {
   "axisCustom": 0,
   "axisStandard": 20,
   "contextCount": 108,
   "dts": {
    "calculationLink": {
     "local": [
      "apt-20211231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "apt-20211231_def.xml"
     ]
    },
    "inline": {
     "local": [
      "apt20211231_10k.htm"
     ]
    },
    "labelLink": {
     "local": [
      "apt-20211231_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "apt-20211231_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "apt-20211231.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-roles-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.xsd",
      "https://xbrl.sec.gov/country/2021/country-2021.xsd",
      "https://xbrl.sec.gov/currency/2021/currency-2021.xsd",
      "https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd",
      "https://xbrl.sec.gov/exch/2021/exch-2021.xsd",
      "https://xbrl.sec.gov/naics/2021/naics-2021.xsd",
      "https://xbrl.sec.gov/sic/2021/sic-2021.xsd",
      "https://xbrl.sec.gov/stpr/2021/stpr-2021.xsd"
     ]
    }
   },
   "elementCount": 433,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2021-01-31": 30,
    "http://www.alphaprotech.com/20211231": 5,
    "http://xbrl.sec.gov/dei/2021q4": 6,
    "total": 41
   },
   "keyCustom": 19,
   "keyStandard": 356,
   "memberCustom": 21,
   "memberStandard": 23,
   "nsprefix": "apt",
   "nsuri": "http://www.alphaprotech.com/20211231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "b",
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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",
     "role": "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information",
     "shortName": "Document And Entity Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "b",
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "009 - Disclosure - Note 4 - Inventories",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories",
     "shortName": "Note 4 - Inventories",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "010 - Disclosure - Note 5 - Property and Equipment",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment",
     "shortName": "Note 5 - Property and Equipment",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "011 - Disclosure - Note 6 - Goodwill and Intangible Assets",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets",
     "shortName": "Note 6 - Goodwill and Intangible Assets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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 7 - Equity Investments in Unconsolidated Affiliate",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
     "shortName": "Note 7 - Equity Investments in Unconsolidated Affiliate",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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 8 - Accrued Liabilities",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities",
     "shortName": "Note 8 - Accrued Liabilities",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "014 - Disclosure - Note 9 - Notes Payable",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable",
     "shortName": "Note 9 - Notes Payable",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "015 - Disclosure - Note 10 - Shareholders' Equity",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity",
     "shortName": "Note 10 - Shareholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "016 - Disclosure - Note 11 - Income Taxes",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes",
     "shortName": "Note 11 - Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "017 - Disclosure - Note 12 - Leases",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-",
     "shortName": "Note 12 - Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "018 - Disclosure - Note 13 - Legal",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-13-legal",
     "shortName": "Note 13 - Legal",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "001 - Statement - Consolidated Balance Sheets",
     "role": "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-",
     "shortName": "Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "019 - Disclosure - Note 14 - Employee Benefit Plans",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans",
     "shortName": "Note 14 - Employee Benefit Plans",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "020 - Disclosure - Note 15 - Activity of Business Segments",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments",
     "shortName": "Note 15 - Activity of Business Segments",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "021 - Disclosure - Note 16 - Concentration of Risk",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-",
     "shortName": "Note 16 - Concentration of Risk",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "apt:EmploymentAgreementsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "022 - Disclosure - Note 17 - Employment Agreements",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements",
     "shortName": "Note 17 - Employment Agreements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "apt:EmploymentAgreementsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "023 - Disclosure - Note 18 - Related Party Transactions",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-18-related-party-transactions",
     "shortName": "Note 18 - Related Party Transactions",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "apt:ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "024 - Disclosure - Note 19 - Out-of-Period Adjustment",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-",
     "shortName": "Note 19 - Out-of-Period Adjustment",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "apt:ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "025 - Disclosure - Note 20 - Subsequent Events",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-20-subsequent-events",
     "shortName": "Note 20 - Subsequent Events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "026 - Disclosure - Significant Accounting Policies (Policies)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies",
     "shortName": "Significant Accounting Policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "apt:PropertyPlantAndEquipmentUsefulLivesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "027 - Disclosure - Note 2 - Summary of Significant Accounting Policies (Tables)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables",
     "shortName": "Note 2 - Summary of Significant Accounting Policies (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "apt:PropertyPlantAndEquipmentUsefulLivesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "028 - Disclosure - Note 4 - Inventories (Tables)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-tables",
     "shortName": "Note 4 - Inventories (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": null,
     "groupType": "statement",
     "isDefault": "false",
     "longName": "002 - Statement - Consolidated Balance Sheets (Parentheticals)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals",
     "shortName": "Consolidated Balance Sheets (Parentheticals)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": null
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "029 - Disclosure - Note 5 - Property and Equipment (Tables)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-tables",
     "shortName": "Note 5 - Property and Equipment (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "030 - Disclosure - Note 6 - Goodwill and Intangible Assets (Tables)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables",
     "shortName": "Note 6 - Goodwill and Intangible Assets (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "031 - Disclosure - Note 8 - Accrued Liabilities (Tables)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables",
     "shortName": "Note 8 - Accrued Liabilities (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "032 - Disclosure - Note 10 - Shareholders' Equity (Tables)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-tables",
     "shortName": "Note 10 - Shareholders' Equity (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "033 - Disclosure - Note 11 - Income Taxes (Tables)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables",
     "shortName": "Note 11 - Income Taxes (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "034 - Disclosure - Note 12 - Leases (Tables)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables",
     "shortName": "Note 12 - Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "035 - Disclosure - Note 15 - Activity of Business Segments (Tables)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables",
     "shortName": "Note 15 - Activity of Business Segments (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:ConcentrationRiskDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "036 - Disclosure - Note 16 - Concentration of Risk (Tables)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-tables",
     "shortName": "Note 16 - Concentration of Risk (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:ConcentrationRiskDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ContractWithCustomerLiabilityCurrent",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "037 - Disclosure - Note 2 - Summary of Significant Accounting Policies (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual",
     "shortName": "Note 2 - Summary of Significant Accounting Policies (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:AdvertisingCostsPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:AdvertisingExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "apt:PropertyPlantAndEquipmentUsefulLivesTableTextBlock",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "038 - Disclosure - Note 2 - Summary of Significant Accounting Policies - Property and Equipment (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details",
     "shortName": "Note 2 - Summary of Significant Accounting Policies - Property and Equipment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "apt:PropertyPlantAndEquipmentUsefulLivesTableTextBlock",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31_PropertyPlantAndEquipmentByTypeAxis-BuildingMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "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 Comprehensive Income (Unaudited)",
     "role": "http://www.alphaprotech.com/20211231/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": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "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": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "039 - Disclosure - Note 2 - Summary of Significant Accounting Policies - Reconciliation of Net Income and Number of Shares Used in Computations of Basic and Diluted EPS (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details",
     "shortName": "Note 2 - Summary of Significant Accounting Policies - 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:EarningsPerSharePolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "040 - Disclosure - Note 3 - Investments (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual",
     "shortName": "Note 3 - Investments (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "041 - Disclosure - Note 4 - Inventories - Inventories (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details",
     "shortName": "Note 4 - Inventories - Inventories (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DepreciationAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "042 - Disclosure - Note 5 - Property and Equipment (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-details-textual",
     "shortName": "Note 5 - Property and Equipment (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DepreciationAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:BuildingsAndImprovementsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "043 - Disclosure - Note 5 - Property and Equipment - Property and Equipment (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details",
     "shortName": "Note 5 - Property and Equipment - Property and Equipment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:BuildingsAndImprovementsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "044 - Disclosure - Note 6 - Goodwill and Intangible Assets (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-details-textual",
     "shortName": "Note 6 - Goodwill and Intangible Assets (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsNet",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "045 - Disclosure - Note 6 - Goodwill and Intangible Assets - Definite-lived Intangible Assets (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details",
     "shortName": "Note 6 - Goodwill and Intangible Assets - Definite-lived Intangible Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31_FiniteLivedIntangibleAssetsByMajorClassAxis-PatentsAndTrademarksMember",
      "decimals": null,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "046 - Disclosure - Note 6 - Goodwill and Intangible Assets - Estimated Future Amortization Expense Related to Definite-lived Intangible Assets (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details",
     "shortName": "Note 6 - Goodwill and Intangible Assets - Estimated Future Amortization Expense Related to Definite-lived Intangible Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "apt:ExpenseToAcquireInventory",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "047 - Disclosure - Note 7 - Equity Investments in Unconsolidated Affiliate (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual",
     "shortName": "Note 7 - Equity Investments in Unconsolidated Affiliate (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "apt:ExpenseToAcquireInventory",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ContractWithCustomerLiability",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "048 - Disclosure - Note 8 - Accrued Liabilities (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-details-textual",
     "shortName": "Note 8 - Accrued Liabilities (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ContractWithCustomerLiability",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2019-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": "004 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
     "role": "http://www.alphaprotech.com/20211231/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": "apt20211231_10k.htm",
      "contextRef": "i_2019-12-31_StatementEquityComponentsAxis-CommonStockMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockSharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccruedSalariesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "049 - Disclosure - Note 8 - Accrued Liabilities - Accrued Liabilities (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details",
     "shortName": "Note 8 - Accrued Liabilities - Accrued Liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccruedSalariesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2020-05-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "050 - Disclosure - Note 9 - Notes Payable (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual",
     "shortName": "Note 9 - Notes Payable (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2020-05-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockRepurchasedAndRetiredDuringPeriodShares",
      "reportCount": 1,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "051 - Disclosure - Note 10 - Shareholders' Equity (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
     "shortName": "Note 10 - Shareholders' Equity (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "lang": "en-US",
      "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2020-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "052 - Disclosure - Note 10 - Shareholders' Equity - Stock Option Activity (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details",
     "shortName": "Note 10 - Shareholders' Equity - Stock Option Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2019-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USDPerShare",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock",
       "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USDPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "053 - Disclosure - Note 10 - Shareholders' Equity - Information About Stock Options (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details",
     "shortName": "Note 10 - Shareholders' Equity - Information About Stock Options (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock",
       "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USDPerShare",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentIncomeTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "054 - Disclosure - Note 11 - Income Taxes - Provision for Income Taxes (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details",
     "shortName": "Note 11 - Income Taxes - Provision for Income Taxes (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentIncomeTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "055 - Disclosure - Note 11 - Income Taxes - Deferred Income Tax Assets (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details",
     "shortName": "Note 11 - Income Taxes - Deferred Income Tax Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "056 - Disclosure - Note 11 - Income Taxes - Income Tax Reconciliation (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details",
     "shortName": "Note 11 - Income Taxes - Income Tax Reconciliation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "057 - Disclosure - Note 12 - Leases (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual",
     "shortName": "Note 12 - Leases (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:OperatingLeaseExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "058 - Disclosure - Note 12 - Leases - Future Minimum Lease Payment (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details",
     "shortName": "Note 12 - Leases - Future Minimum Lease Payment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "005 - Statement - Consolidated Statements of Cash Flows",
     "role": "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows",
     "shortName": "Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "059 - Disclosure - Note 14 - Employee Benefit Plans (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual",
     "shortName": "Note 14 - Employee Benefit Plans (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "060 - Disclosure - Note 15 - Activity of Business Segments (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual",
     "shortName": "Note 15 - Activity of Business Segments (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31_StatementGeographicalAxis-AU",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "061 - Disclosure - Note 15 - Activity of Business Segments - Consolidated Net Sales (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
     "shortName": "Note 15 - 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": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "062 - Disclosure - Note 15 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details",
     "shortName": "Note 15 - 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": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31_ConsolidationItemsAxis-OperatingSegmentsMember",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "063 - Disclosure - Note 15 - Activity of Business Segments - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
     "shortName": "Note 15 - Activity of Business Segments - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "apt:TotalConsolidatedAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "064 - Disclosure - Note 15 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
     "shortName": "Note 15 - 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": "apt20211231_10k.htm",
      "contextRef": "i_2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "apt:TotalConsolidatedAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:ConcentrationRiskDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2020-01-01_2020-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtSecuritiesAvailableForSaleRealizedLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "065 - Disclosure - Note 16 - Concentration of Risk (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual",
     "shortName": "Note 16 - Concentration of Risk (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:ConcentrationRiskDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2020-01-01_2020-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtSecuritiesAvailableForSaleRealizedLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock",
       "us-gaap:ConcentrationRiskDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "066 - Disclosure - Note 16 - Concentration of Risk - Customer Concentration (Details)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details",
     "shortName": "Note 16 - Concentration of Risk - Customer Concentration (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock",
       "us-gaap:ConcentrationRiskDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31_ConcentrationRiskByBenchmarkAxis-AccountsReceivableMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerAMember",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": null,
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "067 - Disclosure - Note 17 - Employment Agreements (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual",
     "shortName": "Note 17 - Employment Agreements (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "apt:ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxExpenseFromStockOptionsExercised",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "068 - Disclosure - Note 19 - Out-of-Period Adjustment (Details Textual)",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual",
     "shortName": "Note 19 - Out-of-Period Adjustment (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "apt:ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2019-01-01_2019-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxExpenseFromStockOptionsExercised",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "006 - Disclosure - Note 1 - The Company",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-1-the-company",
     "shortName": "Note 1 - The Company",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NatureOfOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-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": "007 - Disclosure - Note 2 - Summary of Significant Accounting Policies",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
     "shortName": "Note 2 - Summary of Significant Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "008 - Disclosure - Note 3 - Investments",
     "role": "http://www.alphaprotech.com/20211231/role/statement-note-3-investments",
     "shortName": "Note 3 - Investments",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20211231_10k.htm",
      "contextRef": "d_2021-01-01_2021-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 45,
   "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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_BonusMaximumThreshold": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum threshold for bonus payments under certain bonus plans.",
        "label": "apt_BonusMaximumThreshold",
        "terseLabel": "Bonus, Maximum Threshold"
       }
      }
     },
     "localname": "BonusMaximumThreshold",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_BonusPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The bonus paid to the CEO and President in percentage of the Company's pre-tax profits.",
        "label": "apt_BonusPercentage",
        "terseLabel": "Bonus Percentage"
       }
      }
     },
     "localname": "BonusPercentage",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "apt_BuildingSupplyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Building Supply [Member]",
        "label": "Building Supply [Member]"
       }
      }
     },
     "localname": "BuildingSupplyMember",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_ConcentrationRiskThresholdPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The concentration risk threshold percentage derived from quantitative amount.",
        "label": "apt_ConcentrationRiskThresholdPercentage",
        "terseLabel": "Concentration Risk Threshold Percentage"
       }
      }
     },
     "localname": "ConcentrationRiskThresholdPercentage",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_CustomerAMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents major customer.",
        "label": "Customer A [Member]"
       }
      }
     },
     "localname": "CustomerAMember",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_CustomerBMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents a major customer.",
        "label": "Customer B [Member]"
       }
      }
     },
     "localname": "CustomerBMember",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_CustomerCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents a major customer.",
        "label": "Customer C [Member]"
       }
      }
     },
     "localname": "CustomerCMember",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_DeferredTaxAssetsInventoryCurrent": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory classified as current.",
        "label": "Inventory reserve"
       }
      }
     },
     "localname": "DeferredTaxAssetsInventoryCurrent",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible alternative minimum tax and foreign tax credit carryforwards.",
        "label": "AMT/Foreign tax credits"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxCreditCarryforwardsAlternativeMinimumTaxAndForeignTaxCredits",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities classified as current.",
        "label": "Accrued expenses and inventory"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilitiesCurrent",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross amount of noncurrent deferred tax liabilities, which result from applying the applicable tax rate to taxable temporary differences pertaining to each jurisdiction to which the entity is obligated to pay income tax.",
        "label": "apt_DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent",
        "negatedLabel": "State income taxes"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesStateIncomeTaxesNonCurrent",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details"
     ],
     "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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_EmployeesAndDirectorsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "To whom the options outstanding are granted to.",
        "label": "Employees and Directors [Member]"
       }
      }
     },
     "localname": "EmployeesAndDirectorsMember",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_EmploymentAgreementTerm": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period of the employment agreement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "apt_EmploymentAgreementTerm",
        "terseLabel": "Employment Agreement Term (Year)"
       }
      }
     },
     "localname": "EmploymentAgreementTerm",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "apt_EmploymentAgreementsTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure relating to employment agreements in which the reporting entity is involved.",
        "label": "Employment Agreements [Text Block]"
       }
      }
     },
     "localname": "EmploymentAgreementsTextBlock",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "apt_ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the values of error corrections that are reconciled against provision for income tax.",
        "label": "Error Correction for Taxes Corrected in Provision for Income Tax [Member]"
       }
      }
     },
     "localname": "ErrorCorrectionForTaxesCorrectedInProvisionForIncomeTaxMember",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the values of error corrections that are reconciled against retained earnings.",
        "label": "Error Correction for Taxes Corrected in Retained Earnings [Member]"
       }
      }
     },
     "localname": "ErrorCorrectionForTaxesCorrectedInRetainedEarningsMember",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of prior period adjustments to previously issued financial statements including (1) the effect of the correction on each financial statement line item and any per-share amounts affected for each prior period presented (2) the cumulative effect of the change on retained earnings or other appropriate components of equity or net assets in the statement of financial position, as of the beginning of the earliest period presented, and (3) the effect of the prior period adjustments (both gross and net of applicable income tax) on the net income of each prior period presented in the entity's annual report for the year in which the adjustments are made.",
        "label": "Error Corrections and Prior Period Adjustments [Text Block]"
       }
      }
     },
     "localname": "ErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-"
     ],
     "xbrltype": "textBlockItemType"
    },
    "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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_ForEmployeesContributing1PercentOfGrossEarningsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents employees contributing 1% of gross earnings.",
        "label": "For Employees Contributing 1 Percent of Gross Earnings [Member]"
       }
      }
     },
     "localname": "ForEmployeesContributing1PercentOfGrossEarningsMember",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_ForEmployeesContributing2To12PercentOfGrossEarningsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents employees who contribute between 2% to 12% of their gross earnings.",
        "label": "For Employees Contributing 2 to12 Percent of Gross Earnings [Member]"
       }
      }
     },
     "localname": "ForEmployeesContributing2To12PercentOfGrossEarningsMember",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_HarmonyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by name of investment.",
        "label": "Harmony [Member]"
       }
      }
     },
     "localname": "HarmonyMember",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-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/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_NotesToFinancialStatementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes To Financial Statements [Abstract]"
       }
      }
     },
     "localname": "NotesToFinancialStatementsAbstract",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "pureItemType"
    },
    "apt_OperatingLeaseExpenseNetOfAccretion": {
     "auth_ref": [],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 8.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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_PatentsAndTrademarksMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Patents and trademarks",
        "label": "Patents and Trademarks [Member]"
       }
      }
     },
     "localname": "PatentsAndTrademarksMember",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_ProceedsFromPaymentsForStockOptionsExercised": {
     "auth_ref": [],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_PropertyPlantAndEquipmentUsefulLivesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of useful life of long lived, physical assets used in the normal conduct of business and not intended for resale.",
        "label": "Property, Plant, and Equipment, Useful Lives [Table Text Block]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLivesTableTextBlock",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "apt_RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for the classification of shipping and handling costs, including whether the costs are included in cost of sales or included in other income statement accounts. If shipping and handling fees are significant and are not included in cost of sales, disclosure includes both the amounts of such costs and the line item on the income statement which includes such costs.",
        "label": "Revenue from Contract with Customer, Shipping and Handling, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerShippingAndHandlingPolicyPolicyTextBlock",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_TemporaryDifferencesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Temporary differences: [Abstract]",
        "label": "Temporary differences:"
       }
      }
     },
     "localname": "TemporaryDifferencesAbstract",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details"
     ],
     "xbrltype": "stringItemType"
    },
    "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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-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/20211231",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_statement-statement-note-10-shareholders-equity-information-about-stock-options-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 10 - Shareholders' Equity - Information About Stock Options (Details)"
       }
      }
     },
     "localname": "statement-statement-note-10-shareholders-equity-information-about-stock-options-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-10-shareholders-equity-stock-option-activity-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 10 - Shareholders' Equity - Stock Option Activity (Details)"
       }
      }
     },
     "localname": "statement-statement-note-10-shareholders-equity-stock-option-activity-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-10-shareholders-equity-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 10 - Shareholders' Equity"
       }
      }
     },
     "localname": "statement-statement-note-10-shareholders-equity-tables",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-11-income-taxes-deferred-income-tax-assets-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 11 - Income Taxes - Deferred Income Tax Assets (Details)"
       }
      }
     },
     "localname": "statement-statement-note-11-income-taxes-deferred-income-tax-assets-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-11-income-taxes-income-tax-reconciliation-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 11 - Income Taxes - Income Tax Reconciliation (Details)"
       }
      }
     },
     "localname": "statement-statement-note-11-income-taxes-income-tax-reconciliation-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-11-income-taxes-provision-for-income-taxes-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 11 - Income Taxes - Provision for Income Taxes (Details)"
       }
      }
     },
     "localname": "statement-statement-note-11-income-taxes-provision-for-income-taxes-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-11-income-taxes-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 11 - Income Taxes"
       }
      }
     },
     "localname": "statement-statement-note-11-income-taxes-tables",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-12-leases-future-minimum-lease-payment-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 12 - Leases - Future Minimum Lease Payment (Details)"
       }
      }
     },
     "localname": "statement-statement-note-12-leases-future-minimum-lease-payment-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-12-leases-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 12 - Leases"
       }
      }
     },
     "localname": "statement-statement-note-12-leases-tables",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 15 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details)"
       }
      }
     },
     "localname": "statement-statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 15 - Activity of Business Segments - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)"
       }
      }
     },
     "localname": "statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 15 - Activity of Business Segments - Consolidated Net Sales (Details)"
       }
      }
     },
     "localname": "statement-statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 15 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details)"
       }
      }
     },
     "localname": "statement-statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-15-activity-of-business-segments-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 15 - Activity of Business Segments"
       }
      }
     },
     "localname": "statement-statement-note-15-activity-of-business-segments-tables",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-16-concentration-of-risk-customer-concentration-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 16 - Concentration of Risk - Customer Concentration (Details)"
       }
      }
     },
     "localname": "statement-statement-note-16-concentration-of-risk-customer-concentration-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-16-concentration-of-risk-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 16 - Concentration of Risk"
       }
      }
     },
     "localname": "statement-statement-note-16-concentration-of-risk-tables",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 2 - Summary of Significant Accounting Policies - Property and Equipment (Details)"
       }
      }
     },
     "localname": "statement-statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-2-summary-of-significant-accounting-policies-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 2 - Summary of Significant Accounting Policies - Reconciliation of Net Income and Number of Shares Used in Computations of Basic and Diluted EPS (Details)"
       }
      }
     },
     "localname": "statement-statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-2-summary-of-significant-accounting-policies-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 2 - Summary of Significant Accounting Policies"
       }
      }
     },
     "localname": "statement-statement-note-2-summary-of-significant-accounting-policies-tables",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-4-inventories-inventories-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 4 - Inventories - Inventories (Details)"
       }
      }
     },
     "localname": "statement-statement-note-4-inventories-inventories-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-4-inventories-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 4 - Inventories"
       }
      }
     },
     "localname": "statement-statement-note-4-inventories-tables",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-5-property-and-equipment-property-and-equipment-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 5 - Property and Equipment - Property and Equipment (Details)"
       }
      }
     },
     "localname": "statement-statement-note-5-property-and-equipment-property-and-equipment-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-5-property-and-equipment-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 5 - Property and Equipment"
       }
      }
     },
     "localname": "statement-statement-note-5-property-and-equipment-tables",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 6 - Goodwill and Intangible Assets - Definite-lived Intangible Assets (Details)"
       }
      }
     },
     "localname": "statement-statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 6 - Goodwill and Intangible Assets - Estimated Future Amortization Expense Related to Definite-lived Intangible Assets (Details)"
       }
      }
     },
     "localname": "statement-statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-6-goodwill-and-intangible-assets-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 6 - Goodwill and Intangible Assets"
       }
      }
     },
     "localname": "statement-statement-note-6-goodwill-and-intangible-assets-tables",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-8-accrued-liabilities-accrued-liabilities-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 8 - Accrued Liabilities - Accrued Liabilities (Details)"
       }
      }
     },
     "localname": "statement-statement-note-8-accrued-liabilities-accrued-liabilities-details",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-8-accrued-liabilities-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 8 - Accrued Liabilities"
       }
      }
     },
     "localname": "statement-statement-note-8-accrued-liabilities-tables",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-significant-accounting-policies-policies": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Significant Accounting Policies"
       }
      }
     },
     "localname": "statement-statement-significant-accounting-policies-policies",
     "nsuri": "http://www.alphaprotech.com/20211231",
     "xbrltype": "stringItemType"
    },
    "country_AU": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "AUSTRALIA"
       }
      }
     },
     "localname": "AU",
     "nsuri": "http://xbrl.sec.gov/country/2021",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "country_IN": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "INDIA"
       }
      }
     },
     "localname": "IN",
     "nsuri": "http://xbrl.sec.gov/country/2021",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-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/2021",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditorFirmId": {
     "auth_ref": [
      "r561",
      "r562",
      "r563"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "PCAOB issued Audit Firm Identifier",
        "label": "Auditor Firm ID"
       }
      }
     },
     "localname": "AuditorFirmId",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "nonemptySequenceNumberItemType"
    },
    "dei_AuditorLocation": {
     "auth_ref": [
      "r561",
      "r562",
      "r563"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location"
       }
      }
     },
     "localname": "AuditorLocation",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_AuditorName": {
     "auth_ref": [
      "r561",
      "r562",
      "r563"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name"
       }
      }
     },
     "localname": "AuditorName",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r561",
      "r562",
      "r563"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an annual report.",
        "label": "Document Annual Report"
       }
      }
     },
     "localname": "DocumentAnnualReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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/2021q4",
     "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": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r564"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r559"
     ],
     "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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information",
      "http://www.alphaprotech.com/20211231/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-13-legal",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-18-related-party-transactions",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-20-subsequent-events",
      "http://www.alphaprotech.com/20211231/role/statement-note-3-investments",
      "http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable",
      "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r559"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r559"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r566"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityPublicFloat": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.",
        "label": "Entity Public Float"
       }
      }
     },
     "localname": "EntityPublicFloat",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r559"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r559"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r559"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r559"
     ],
     "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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_EntityVoluntaryFilers": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.",
        "label": "Entity Voluntary Filers"
       }
      }
     },
     "localname": "EntityVoluntaryFilers",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [
      "r567"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.",
        "label": "Entity Well-known Seasoned Issuer"
       }
      }
     },
     "localname": "EntityWellKnownSeasonedIssuer",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_IcfrAuditorAttestationFlag": {
     "auth_ref": [
      "r561",
      "r562",
      "r563"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "localname": "IcfrAuditorAttestationFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information",
      "http://www.alphaprotech.com/20211231/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-13-legal",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-18-related-party-transactions",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-20-subsequent-events",
      "http://www.alphaprotech.com/20211231/role/statement-note-3-investments",
      "http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable",
      "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r558"
     ],
     "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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r560"
     ],
     "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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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/2021q4",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-document-and-entity-information"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "srt_ConsolidationItemsAxis": {
     "auth_ref": [
      "r101",
      "r152",
      "r165",
      "r166",
      "r167",
      "r168",
      "r170",
      "r172",
      "r176",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r251",
      "r252",
      "r254",
      "r256",
      "r257"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Axis]"
       }
      }
     },
     "localname": "ConsolidationItemsAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ConsolidationItemsDomain": {
     "auth_ref": [
      "r101",
      "r152",
      "r165",
      "r166",
      "r167",
      "r168",
      "r170",
      "r172",
      "r176",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r251",
      "r252",
      "r254",
      "r256",
      "r257"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Domain]"
       }
      }
     },
     "localname": "ConsolidationItemsDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_EquityMethodInvesteeNameDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment, Name [Domain]"
       }
      }
     },
     "localname": "EquityMethodInvesteeNameDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r183",
      "r279",
      "r283",
      "r525"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r259",
      "r272",
      "r361",
      "r366",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r522",
      "r526",
      "r555",
      "r556"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r259",
      "r272",
      "r361",
      "r366",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r522",
      "r526",
      "r555",
      "r556"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r183",
      "r279",
      "r283",
      "r525"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_OfficerMember": {
     "auth_ref": [
      "r185"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Officer [Member]"
       }
      }
     },
     "localname": "OfficerMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_PresidentMember": {
     "auth_ref": [
      "r185"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "President [Member]"
       }
      }
     },
     "localname": "PresidentMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r179",
      "r279",
      "r281",
      "r489",
      "r521",
      "r523"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r179",
      "r279",
      "r281",
      "r489",
      "r521",
      "r523"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r259",
      "r272",
      "r308",
      "r361",
      "r366",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r522",
      "r526",
      "r555",
      "r556"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r259",
      "r272",
      "r308",
      "r361",
      "r366",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r522",
      "r526",
      "r555",
      "r556"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ReportableGeographicalComponentsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reportable Geographical Components [Member]"
       }
      }
     },
     "localname": "ReportableGeographicalComponentsMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RestatementAxis": {
     "auth_ref": [
      "r1",
      "r103",
      "r104",
      "r105",
      "r106",
      "r107",
      "r108",
      "r109",
      "r110",
      "r111",
      "r113",
      "r114",
      "r115",
      "r116",
      "r117",
      "r118",
      "r131",
      "r203",
      "r204",
      "r399",
      "r426",
      "r442",
      "r443",
      "r444",
      "r445",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r568",
      "r569"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revision of Prior Period [Axis]"
       }
      }
     },
     "localname": "RestatementAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RestatementDomain": {
     "auth_ref": [
      "r1",
      "r103",
      "r104",
      "r105",
      "r106",
      "r107",
      "r108",
      "r109",
      "r110",
      "r111",
      "r113",
      "r114",
      "r115",
      "r116",
      "r117",
      "r118",
      "r131",
      "r203",
      "r204",
      "r399",
      "r426",
      "r442",
      "r443",
      "r444",
      "r445",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r568",
      "r569"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revision of Prior Period [Domain]"
       }
      }
     },
     "localname": "RestatementDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember": {
     "auth_ref": [
      "r108",
      "r109",
      "r110",
      "r113",
      "r114",
      "r116",
      "r117"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revision of Prior Period, Error Correction, Adjustment [Member]"
       }
      }
     },
     "localname": "RevisionOfPriorPeriodErrorCorrectionAdjustmentMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": {
     "auth_ref": [
      "r199"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment, Name [Axis]"
       }
      }
     },
     "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r180",
      "r181",
      "r279",
      "r282",
      "r524",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r180",
      "r181",
      "r279",
      "r282",
      "r524",
      "r539",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualAxis": {
     "auth_ref": [
      "r185",
      "r471"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Axis]"
       }
      }
     },
     "localname": "TitleOfIndividualAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Domain]"
       }
      }
     },
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis": {
     "auth_ref": [
      "r52"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": {
     "auth_ref": [
      "r43"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r42",
      "r477"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 3.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableMember": {
     "auth_ref": [
      "r540"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Due from customers or clients for goods or services that have been delivered or sold.",
        "label": "Accounts Receivable [Member]"
       }
      }
     },
     "localname": "AccountsReceivableMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r7",
      "r24",
      "r186",
      "r187"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts receivable, net of allowance for doubtful accounts of $64,000 as of December 31, 2021 and $71,000 as of December 31, 2020"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableRelatedPartiesCurrent": {
     "auth_ref": [
      "r51",
      "r100",
      "r470",
      "r472"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 0.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of receivables arising from transactions with related parties due within one year or the normal operating cycle, if longer.",
        "label": "Accounts receivable, related party"
       }
      }
     },
     "localname": "AccountsReceivableRelatedPartiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedBonusesCurrent": {
     "auth_ref": [
      "r13",
      "r14",
      "r46"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details": {
       "order": 0.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "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": "us-gaap_AccruedBonusesCurrent",
        "negatedLabel": "Commission and bonuses payable and general accrued liabilities",
        "terseLabel": "Accrued Bonuses, Current"
       }
      }
     },
     "localname": "AccruedBonusesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      },
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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",
        "totalLabel": "Total accrued liabilities"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent": {
     "auth_ref": [
      "r498",
      "r516"
     ],
     "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.",
        "label": "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent",
        "terseLabel": "Accrued Liabilities, Total"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrentAndNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedSalariesCurrent": {
     "auth_ref": [
      "r13",
      "r14",
      "r46"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details": {
       "order": 1.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "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 tax payable"
       }
      }
     },
     "localname": "AccruedSalariesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r41",
      "r231"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details": {
       "order": 0.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.",
        "label": "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
        "negatedLabel": "Less accumulated depreciation and amortization"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "auth_ref": [
      "r25"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.",
        "label": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r103",
      "r104",
      "r105",
      "r396",
      "r397",
      "r398",
      "r443"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsForErrorCorrectionDomain": {
     "auth_ref": [
      "r108",
      "r109",
      "r110",
      "r113",
      "r114",
      "r116",
      "r117"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of error correction.",
        "label": "Error Correction, Type [Domain]"
       }
      }
     },
     "localname": "AdjustmentsForErrorCorrectionDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r368",
      "r370",
      "r401",
      "r402"
     ],
     "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": "Share-based compensation expense"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/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 provided by (used in) operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdvertisingCostsPolicyTextBlock": {
     "auth_ref": [
      "r404"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for advertising cost.",
        "label": "Advertising Cost [Policy Text Block]"
       }
      }
     },
     "localname": "AdvertisingCostsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AdvertisingExpense": {
     "auth_ref": [
      "r405"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount charged to advertising expense for the period, which are expenses incurred with the objective of increasing revenue for a specified brand, product or product line.",
        "label": "us-gaap_AdvertisingExpense",
        "terseLabel": "Advertising Expense"
       }
      }
     },
     "localname": "AdvertisingExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r370",
      "r392",
      "r400"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r30",
      "r189",
      "r205"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "Allowance for doubtful accounts"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r84",
      "r218",
      "r223"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.",
        "label": "us-gaap_AmortizationOfIntangibleAssets",
        "terseLabel": "Amortization of Intangible Assets, Total"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-details-textual"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "areaItemType"
    },
    "us-gaap_AssetImpairmentCharges": {
     "auth_ref": [
      "r84",
      "r228"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill.",
        "label": "us-gaap_AssetImpairmentCharges",
        "terseLabel": "Asset Impairment Charges, Total"
       }
      }
     },
     "localname": "AssetImpairmentCharges",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r96",
      "r160",
      "r167",
      "r174",
      "r200",
      "r244",
      "r245",
      "r246",
      "r248",
      "r249",
      "r250",
      "r251",
      "r253",
      "r255",
      "r257",
      "r258",
      "r437",
      "r440",
      "r450",
      "r475",
      "r477",
      "r494",
      "r510"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r9",
      "r11",
      "r55",
      "r96",
      "r200",
      "r244",
      "r245",
      "r246",
      "r248",
      "r249",
      "r250",
      "r251",
      "r253",
      "r255",
      "r257",
      "r258",
      "r437",
      "r440",
      "r450",
      "r475",
      "r477"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 5.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current assets:"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r371",
      "r394"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).",
        "label": "Basis of Accounting, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BuildingMember": {
     "auth_ref": [
      "r230"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities.",
        "label": "Building [Member]"
       }
      }
     },
     "localname": "BuildingMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BuildingsAndImprovementsGross": {
     "auth_ref": [
      "r12",
      "r230"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation of building structures held for productive use including addition, improvement, or renovation to the structure, including, but not limited to, interior masonry, interior flooring, electrical, and plumbing.",
        "label": "Buildings"
       }
      }
     },
     "localname": "BuildingsAndImprovementsGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedComputerSoftwareGross": {
     "auth_ref": [
      "r557"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated amortization of capitalized costs for computer software, including but not limited to, acquired and internally developed computer software.",
        "label": "Software"
       }
      }
     },
     "localname": "CapitalizedComputerSoftwareGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r5",
      "r37",
      "r86"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r16",
      "r87"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.",
        "label": "Cash and Cash Equivalents, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "auth_ref": [
      "r80",
      "r86",
      "r89"
     ],
     "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 year",
        "periodStartLabel": "Cash and cash equivalents, beginning of the year"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r80",
      "r451"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "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": "Increase (decrease) in cash and cash equivalents"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r48",
      "r241",
      "r499",
      "r515"
     ],
     "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 contingincies"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r238",
      "r239",
      "r240",
      "r242",
      "r541"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-13-legal"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommitmentsAndContingenciesPolicyTextBlock": {
     "auth_ref": [
      "r243",
      "r542"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for commitments and contingencies, which may include policies for recognizing and measuring loss and gain contingencies.",
        "label": "Commitments and Contingencies, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": {
     "auth_ref": [
      "r49"
     ],
     "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 (in shares)"
       }
      }
     },
     "localname": "CommonStockCapitalSharesReservedForFutureIssuance",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r103",
      "r104",
      "r443"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r23"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common stock, par value (in dollars per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r23"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.",
        "label": "Common stock, shares authorized (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r23",
      "r273"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "Common stock, shares outstanding (in shares)",
        "periodEndLabel": "Balance as of December 31, 2020 (in shares)",
        "periodStartLabel": "Balance (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r23",
      "r477"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "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; 13,115,341 and 13,419,847 shares outstanding as of December 31, 2021 and December 31, 2020, respectively"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r141",
      "r142",
      "r183",
      "r448",
      "r449",
      "r540"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.",
        "label": "Concentration Risk Benchmark [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r141",
      "r142",
      "r183",
      "r448",
      "r449",
      "r537",
      "r540"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r141",
      "r142",
      "r183",
      "r448",
      "r449",
      "r537",
      "r540"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.",
        "label": "Concentration Risk Type [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskDisclosureTextBlock": {
     "auth_ref": [
      "r146"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date.",
        "label": "Concentration Risk Disclosure [Text Block]"
       }
      }
     },
     "localname": "ConcentrationRiskDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "auth_ref": [
      "r141",
      "r142",
      "r183",
      "r448",
      "r449"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.",
        "label": "Customer"
       }
      }
     },
     "localname": "ConcentrationRiskPercentage1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r141",
      "r142",
      "r183",
      "r448",
      "r449",
      "r540"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration.",
        "label": "Concentration Risk Type [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "auth_ref": [
      "r91",
      "r439"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting.  The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.",
        "label": "Consolidation, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "ConsolidationPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ContractWithCustomerLiability": {
     "auth_ref": [
      "r276",
      "r277",
      "r280"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "us-gaap_ContractWithCustomerLiability",
        "terseLabel": "Contract with Customer, Liability, Total"
       }
      }
     },
     "localname": "ContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "auth_ref": [
      "r276",
      "r277",
      "r280"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.",
        "label": "Customer advance payments of orders",
        "terseLabel": "Contract with Customer, Liability, Current"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CorporateNonSegmentMember": {
     "auth_ref": [
      "r165",
      "r166",
      "r167",
      "r168",
      "r170",
      "r176",
      "r178"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r68",
      "r489"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r97",
      "r422",
      "r429",
      "r431"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.",
        "label": "Current"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r97",
      "r422",
      "r429"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current state and local tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "us-gaap_CurrentStateAndLocalTaxExpenseBenefit",
        "terseLabel": "Current State and Local Tax Expense (Benefit)"
       }
      }
     },
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "auth_ref": [
      "r140",
      "r183"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.",
        "label": "Customer Concentration Risk [Member]"
       }
      }
     },
     "localname": "CustomerConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r95",
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r270",
      "r271"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.",
        "label": "Debt Disclosure [Text Block]"
       }
      }
     },
     "localname": "DebtDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DebtSecuritiesAvailableForSaleGainLoss": {
     "auth_ref": [],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      },
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of unrealized and realized gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).",
        "label": "Loss on marketable securities",
        "negatedLabel": "Loss on marketable securities"
       }
      }
     },
     "localname": "DebtSecuritiesAvailableForSaleGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss": {
     "auth_ref": [
      "r195"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of realized loss on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).",
        "label": "us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss",
        "terseLabel": "Debt Securities, Available-for-sale, Realized Loss"
       }
      }
     },
     "localname": "DebtSecuritiesAvailableForSaleRealizedLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r84",
      "r97",
      "r423",
      "r429",
      "r430",
      "r431"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details": {
       "order": 0.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "auth_ref": [
      "r20",
      "r21",
      "r416",
      "r495",
      "r508"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences.",
        "label": "us-gaap_DeferredIncomeTaxLiabilities",
        "terseLabel": "Deferred Tax Liabilities, Gross, Total"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r409",
      "r410"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxExpenseFromStockOptionsExercised": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax expense from write-off of the deferred tax asset related to deductible stock options at exercise.",
        "label": "us-gaap_DeferredTaxExpenseFromStockOptionsExercised",
        "terseLabel": "Deferred Tax Expense from Stock Options Exercised"
       }
      }
     },
     "localname": "DeferredTaxExpenseFromStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilities": {
     "auth_ref": [
      "r410",
      "r417"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.",
        "label": "us-gaap_DeferredTaxLiabilities",
        "negatedLabel": "Net deferred income tax liabilities"
       }
      }
     },
     "localname": "DeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets": {
     "auth_ref": [
      "r420",
      "r421"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from intangible assets other than goodwill.",
        "label": "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets",
        "negatedLabel": "Intangible assets"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": {
     "auth_ref": [
      "r420",
      "r421"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment.",
        "label": "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment",
        "negatedLabel": "Property and equipment"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains": {
     "auth_ref": [
      "r420",
      "r421"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from unrealized gains on foreign currency transactions.",
        "label": "Foreign exchange"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of discretionary contributions made by an employer to a defined contribution plan.",
        "label": "us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount",
        "terseLabel": "Defined Contribution Plan, Employer Discretionary Contribution Amount"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerDiscretionaryContributionAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of employees' gross pay for which the employer contributes a matching contribution to a defined contribution plan.",
        "label": "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent",
        "terseLabel": "Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerMatchingContributionPercent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Maximum percentage of employee gross pay the employee may contribute to a defined contribution plan.",
        "label": "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent",
        "terseLabel": "Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent"
       }
      }
     },
     "localname": "DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DepreciationAndAmortization": {
     "auth_ref": [
      "r84",
      "r229"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.",
        "label": "us-gaap_DepreciationAndAmortization",
        "terseLabel": "Depreciation, Depletion and Amortization, Nonproduction, Total"
       }
      }
     },
     "localname": "DepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r84",
      "r155"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      },
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-",
      "http://www.alphaprotech.com/20211231/role/statement-note-13-legal",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements",
      "http://www.alphaprotech.com/20211231/role/statement-note-18-related-party-transactions",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-20-subsequent-events",
      "http://www.alphaprotech.com/20211231/role/statement-note-3-investments",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities",
      "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings per common share:"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r65",
      "r108",
      "r109",
      "r111",
      "r112",
      "r113",
      "r119",
      "r121",
      "r126",
      "r127",
      "r128",
      "r131",
      "r132",
      "r444",
      "r445",
      "r503",
      "r519"
     ],
     "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)",
        "terseLabel": "Earnings Per Share, Basic, Total (in dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r65",
      "r108",
      "r109",
      "r111",
      "r112",
      "r113",
      "r121",
      "r126",
      "r127",
      "r128",
      "r131",
      "r132",
      "r444",
      "r445",
      "r503",
      "r519"
     ],
     "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)",
        "terseLabel": "Earnings Per Share, Diluted, Total (in dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "auth_ref": [
      "r129",
      "r130"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.",
        "label": "Earnings Per Share, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "EarningsPerSharePolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r393"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r393"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r0",
      "r59",
      "r60",
      "r61",
      "r103",
      "r104",
      "r105",
      "r107",
      "r114",
      "r117",
      "r134",
      "r202",
      "r273",
      "r274",
      "r396",
      "r397",
      "r398",
      "r425",
      "r426",
      "r443",
      "r452",
      "r453",
      "r454",
      "r455",
      "r456",
      "r457",
      "r527",
      "r528",
      "r529",
      "r569"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityMethodInvestmentAggregateCost": {
     "auth_ref": [
      "r38"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityMethodInvestmentDividendsOrDistributions": {
     "auth_ref": [
      "r63",
      "r79",
      "r84",
      "r517"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment": {
     "auth_ref": [
      "r197"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityMethodInvestmentOwnershipPercentage": {
     "auth_ref": [
      "r199"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EquityMethodInvestments": {
     "auth_ref": [
      "r38",
      "r161",
      "r198"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityMethodInvestmentsDisclosureTextBlock": {
     "auth_ref": [
      "r201"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis": {
     "auth_ref": [
      "r108",
      "r109",
      "r110",
      "r113",
      "r114",
      "r116",
      "r117"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of error correction.",
        "label": "Error Correction, Type [Axis]"
       }
      }
     },
     "localname": "ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementByRestatementPeriodAndAmountAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities.",
        "label": "Fair Value Measurement, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "FairValueMeasurementPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r446",
      "r447"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments.",
        "label": "Fair Value of Financial Instruments, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeaseLiability": {
     "auth_ref": [
      "r460",
      "r465"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Weighted Average Amortization Period (Year)",
        "terseLabel": "Finite-Lived Intangible Asset, Useful Life (Year)"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r222"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization",
        "negatedTerseLabel": "Accumulated Amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r224"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details": {
       "order": 1.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized 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": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r224"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details": {
       "order": 0.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized 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": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r219",
      "r220",
      "r222",
      "r225",
      "r490",
      "r491"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by major type or class of finite-lived intangible assets.",
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r222",
      "r491"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "us-gaap_FiniteLivedIntangibleAssetsGross",
        "terseLabel": "Gross Carrying Amount"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r219",
      "r221"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.",
        "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r222",
      "r490"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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",
        "terseLabel": "Net Carrying Amount",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "auth_ref": [
      "r458"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.",
        "label": "Foreign Currency Transactions and Translations Policy [Policy Text Block]"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FurnitureAndFixturesGross": {
     "auth_ref": [
      "r230"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details": {
       "order": 4.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation of equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.",
        "label": "Office furniture and equipment"
       }
      }
     },
     "localname": "FurnitureAndFixturesGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.",
        "label": "Furniture and Fixtures [Member]"
       }
      }
     },
     "localname": "FurnitureAndFixturesMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GeographicAreasLongLivedAssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-lived assets by geographic region"
       }
      }
     },
     "localname": "GeographicAreasLongLivedAssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GeographicAreasRevenuesFromExternalCustomersAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net sales by geographic region"
       }
      }
     },
     "localname": "GeographicAreasRevenuesFromExternalCustomersAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r212",
      "r214",
      "r477",
      "r493"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 3.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r226"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for goodwill and intangible assets.",
        "label": "Goodwill and Intangible Assets Disclosure [Text Block]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy": {
     "auth_ref": [
      "r216"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for goodwill. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined.",
        "label": "Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsGoodwillPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillImpairmentLoss": {
     "auth_ref": [
      "r84",
      "r213",
      "r215",
      "r217"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "us-gaap_GoodwillImpairmentLoss",
        "terseLabel": "Goodwill, Impairment Loss"
       }
      }
     },
     "localname": "GoodwillImpairmentLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r67",
      "r96",
      "r160",
      "r166",
      "r170",
      "r173",
      "r176",
      "r200",
      "r244",
      "r245",
      "r246",
      "r249",
      "r250",
      "r251",
      "r253",
      "r255",
      "r257",
      "r258",
      "r450"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "auth_ref": [
      "r227",
      "r234"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.",
        "label": "Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeLossAttributableToParent": {
     "auth_ref": [
      "r61",
      "r69"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": {
       "order": 1.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromEquityMethodInvestments": {
     "auth_ref": [
      "r63",
      "r84",
      "r157",
      "r198",
      "r501",
      "r517"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      },
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "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, Total"
       }
      }
     },
     "localname": "IncomeLossFromEquityMethodInvestments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-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/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r98",
      "r413",
      "r414",
      "r419",
      "r427",
      "r432",
      "r434",
      "r435",
      "r436"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r99",
      "r116",
      "r117",
      "r158",
      "r411",
      "r428",
      "r433",
      "r520"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      },
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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": "Income Tax Expense (Benefit), Total",
        "totalLabel": "Provision for income taxes"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r58",
      "r407",
      "r408",
      "r414",
      "r415",
      "r418",
      "r424"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.",
        "label": "Income Tax, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential": {
     "auth_ref": [
      "r412"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details": {
       "order": 5.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign income tax expense (benefit).",
        "label": "Foreign taxes"
       }
      }
     },
     "localname": "IncomeTaxReconciliationForeignIncomeTaxRateDifferential",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r412"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "Income taxes based on U.S. statutory rate of 21% and 34%, respectively"
       }
      }
     },
     "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment": {
     "auth_ref": [
      "r412"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details": {
       "order": 0.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to nondeductible meals and entertainment expense.",
        "label": "Non-deductible meals and entertainment"
       }
      }
     },
     "localname": "IncomeTaxReconciliationNondeductibleExpenseMealsAndEntertainment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost": {
     "auth_ref": [
      "r412"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of reported income tax expense (benefit) in excess of (less than) expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for award under share-based payment arrangement. Includes, but is not limited to, expense determined to be nondeductible upon grant or after for award under share-based payment arrangement.",
        "label": "Stock Compensation"
       }
      }
     },
     "localname": "IncomeTaxReconciliationNondeductibleExpenseShareBasedCompensationCost",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationOtherReconcilingItems": {
     "auth_ref": [
      "r412"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to tax exempt income, equity in earnings (loss) of an unconsolidated subsidiary, minority noncontrolling interest income (loss), tax holiday, disposition of a business, disposition of an asset, repatriation of foreign earnings, repatriation of foreign earnings jobs creation act of 2004, increase (decrease) in enacted tax rate, prior year income taxes, increase (decrease) in deferred tax asset valuation allowance, and other adjustments.",
        "label": "Other"
       }
      }
     },
     "localname": "IncomeTaxReconciliationOtherReconcilingItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r412"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details": {
       "order": 4.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit).",
        "label": "State taxes"
       }
      }
     },
     "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationTaxCreditsForeign": {
     "auth_ref": [
      "r412"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details": {
       "order": 6.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign tax credit.",
        "label": "us-gaap_IncomeTaxReconciliationTaxCreditsForeign",
        "negatedLabel": "FDII deduction"
       }
      }
     },
     "localname": "IncomeTaxReconciliationTaxCreditsForeign",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaid": {
     "auth_ref": [
      "r81",
      "r88"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income.",
        "label": "Cash paid for income taxes"
       }
      }
     },
     "localname": "IncomeTaxesPaid",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "auth_ref": [
      "r83"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r83"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 6.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": {
     "auth_ref": [
      "r83",
      "r487"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "us-gaap_IncreaseDecreaseInContractWithCustomerLiability",
        "terseLabel": "Customer advance payments of orders"
       }
      }
     },
     "localname": "IncreaseDecreaseInContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInDueFromRelatedParties": {
     "auth_ref": [
      "r83"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 5.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r83"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 4.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in assets and liabilities:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingLeaseLiability": {
     "auth_ref": [
      "r83",
      "r462"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 0.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidExpense": {
     "auth_ref": [
      "r83"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 3.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "auth_ref": [
      "r122",
      "r123",
      "r124",
      "r128"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-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": "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-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/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r209"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "auth_ref": [
      "r31",
      "r208"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details": {
       "order": 0.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r6",
      "r53",
      "r477"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://www.alphaprotech.com/20211231/role/statement-note-4-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": "Total inventory"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r15",
      "r54",
      "r92",
      "r133",
      "r206",
      "r207",
      "r209",
      "r488"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.",
        "label": "Inventory, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "InventoryPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryRawMaterialsNetOfReserves": {
     "auth_ref": [
      "r33",
      "r208"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-4-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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWorkInProcessNetOfReserves": {
     "auth_ref": [
      "r32",
      "r208"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details": {
       "order": 1.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures": {
     "auth_ref": [
      "r38"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 0.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r196",
      "r492",
      "r506",
      "r538",
      "r565"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for  investments in certain debt and equity securities.",
        "label": "Investments in Debt and Marketable Equity Securities (and Certain Trading Assets) Disclosure [Text Block]"
       }
      }
     },
     "localname": "InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-3-investments"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IssuanceOfStockAndWarrantsForServicesOrClaims": {
     "auth_ref": [
      "r84"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of share-based compensation granted to nonemployees as payment for services rendered or acknowledged claims.",
        "label": "Basis difference in investments"
       }
      }
     },
     "localname": "IssuanceOfStockAndWarrantsForServicesOrClaims",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseholdImprovementsGross": {
     "auth_ref": [
      "r12",
      "r230"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details": {
       "order": 3.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation of additions or improvements to assets held under a lease arrangement.",
        "label": "Leasehold improvements"
       }
      }
     },
     "localname": "LeaseholdImprovementsGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseholdImprovementsMember": {
     "auth_ref": [
      "r230"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additions or improvements to assets held under a lease arrangement.",
        "label": "Leasehold Improvements [Member]"
       }
      }
     },
     "localname": "LeaseholdImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r465"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.",
        "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r465"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-12-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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r465"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details": {
       "order": 3.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease 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": "2022"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r465"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-12-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 to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r465"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-12-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 third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r465"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-12-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": "2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r465"
     ],
     "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": "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
        "negatedLabel": "Less imputed interest"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r467"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r45",
      "r96",
      "r168",
      "r200",
      "r244",
      "r245",
      "r246",
      "r249",
      "r250",
      "r251",
      "r253",
      "r255",
      "r257",
      "r258",
      "r438",
      "r440",
      "r441",
      "r450",
      "r475",
      "r476"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.",
        "label": "us-gaap_Liabilities",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r29",
      "r96",
      "r200",
      "r450",
      "r477",
      "r497",
      "r513"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r47",
      "r96",
      "r200",
      "r244",
      "r245",
      "r246",
      "r249",
      "r250",
      "r251",
      "r253",
      "r255",
      "r257",
      "r258",
      "r438",
      "r440",
      "r441",
      "r450",
      "r475",
      "r476",
      "r477"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 1.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.",
        "label": "us-gaap_LiabilitiesCurrent",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current liabilities:"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCredit": {
     "auth_ref": [
      "r19",
      "r496",
      "r509"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.",
        "label": "us-gaap_LineOfCredit",
        "terseLabel": "Long-term Line of Credit, Total"
       }
      }
     },
     "localname": "LineOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r44"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.",
        "label": "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity",
        "terseLabel": "Line of Credit Facility, Maximum Borrowing Capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MachineryAndEquipmentGross": {
     "auth_ref": [
      "r12",
      "r230"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details": {
       "order": 0.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.",
        "label": "Machinery and equipment"
       }
      }
     },
     "localname": "MachineryAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MachineryAndEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.",
        "label": "Machinery and Equipment [Member]"
       }
      }
     },
     "localname": "MachineryAndEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MarketableSecurities": {
     "auth_ref": [
      "r500"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of investment in marketable security.",
        "label": "us-gaap_MarketableSecurities",
        "terseLabel": "Marketable Securities, Total"
       }
      }
     },
     "localname": "MarketableSecurities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MarketableSecuritiesGainLoss": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of unrealized and realized gain (loss) on investment in marketable security, including other-than-temporary impairment (OTTI).",
        "label": "us-gaap_MarketableSecuritiesGainLoss",
        "terseLabel": "Marketable Securities, Gain (Loss), Total"
       }
      }
     },
     "localname": "MarketableSecuritiesGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MarketableSecuritiesPolicy": {
     "auth_ref": [
      "r505"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for investment classified as marketable security.",
        "label": "Marketable Securities, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "MarketableSecuritiesPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NatureOfOperations": {
     "auth_ref": [
      "r135",
      "r146"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-1-the-company"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r80"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 1.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r80"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r80",
      "r82",
      "r85"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 0.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 provided by (used in) operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r4",
      "r56",
      "r57",
      "r61",
      "r64",
      "r85",
      "r96",
      "r106",
      "r108",
      "r109",
      "r111",
      "r112",
      "r116",
      "r117",
      "r125",
      "r160",
      "r166",
      "r170",
      "r173",
      "r176",
      "r200",
      "r244",
      "r245",
      "r246",
      "r249",
      "r250",
      "r251",
      "r253",
      "r255",
      "r257",
      "r258",
      "r445",
      "r450",
      "r502",
      "r518"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "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": "Consolidated net income",
        "totalLabel": "Net income"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.",
        "label": "New Accounting Pronouncements, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NoncurrentAssets": {
     "auth_ref": [
      "r181"
     ],
     "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": "Consolidated long-lived assets"
       }
      }
     },
     "localname": "NoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "auth_ref": [
      "r71"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NonoperatingIncomeExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other income (expense):"
       }
      }
     },
     "localname": "NonoperatingIncomeExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NumberOfOperatingSegments": {
     "auth_ref": [
      "r148"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OperatingExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating expenses:"
       }
      }
     },
     "localname": "OperatingExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r160",
      "r166",
      "r170",
      "r173",
      "r176"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseExpense": {
     "auth_ref": [
      "r461"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r460"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r460"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 0.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r460"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 0.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r459"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r464",
      "r466"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r463",
      "r466"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingSegmentsMember": {
     "auth_ref": [
      "r165",
      "r166",
      "r167",
      "r168",
      "r170",
      "r176"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherLongTermDebt": {
     "auth_ref": [
      "r19",
      "r496",
      "r511"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of long-term debt classified as other.",
        "label": "us-gaap_OtherLongTermDebt",
        "terseLabel": "Other Long-term Debt, Total"
       }
      }
     },
     "localname": "OtherLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "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",
        "terseLabel": "Payments for Repurchase of Common Stock"
       }
      }
     },
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r76"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.",
        "label": "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment",
        "negatedLabel": "Purchase of property and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": {
     "auth_ref": [
      "r308",
      "r310",
      "r316",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r351",
      "r353",
      "r354",
      "r355",
      "r367"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for retirement benefits.",
        "label": "Retirement Benefits [Text Block]"
       }
      }
     },
     "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PlanNameAxis": {
     "auth_ref": [
      "r371",
      "r394"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PlanNameDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan name for share-based payment arrangement.",
        "label": "Plan Name [Domain]"
       }
      }
     },
     "localname": "PlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PolicyTextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_PolicyTextBlockAbstract",
        "terseLabel": "Accounting Policies"
       }
      }
     },
     "localname": "PolicyTextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "auth_ref": [
      "r8",
      "r10",
      "r210",
      "r211"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 3.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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PriorPeriodReclassificationAdjustmentDescription": {
     "auth_ref": [
      "r2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.",
        "label": "Reclassification, Comparability Adjustment [Policy Text Block]"
       }
      }
     },
     "localname": "PriorPeriodReclassificationAdjustmentDescription",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital": {
     "auth_ref": [
      "r74",
      "r79"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow associated with the aggregate amount received by the entity through sale or maturity of marketable securities  (held-to-maturity or available-for-sale) during the period.",
        "label": "us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities",
        "terseLabel": "Proceeds from Sale and Maturity of Marketable Securities, Total"
       }
      }
     },
     "localname": "ProceedsFromSaleAndMaturityOfMarketableSecurities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt": {
     "auth_ref": [
      "r72",
      "r73",
      "r194"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 0.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow from sale of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).",
        "label": "Proceeds from sales of marketable securities"
       }
      }
     },
     "localname": "ProceedsFromSaleOfAvailableForSaleSecuritiesDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfProductiveAssets": {
     "auth_ref": [
      "r75"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromStockOptionsExercised": {
     "auth_ref": [
      "r77",
      "r395"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement.",
        "label": "us-gaap_ProceedsFromStockOptionsExercised",
        "terseLabel": "Proceeds from Stock Options Exercised"
       }
      }
     },
     "localname": "ProceedsFromStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r41",
      "r232"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.",
        "label": "Long-Lived Tangible Asset [Axis]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r235",
      "r543",
      "r544",
      "r545"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property, Plant and Equipment Disclosure [Text Block]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r40",
      "r230"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "us-gaap_PropertyPlantAndEquipmentGross",
        "totalLabel": "Property, Plant and Equipment, Gross, Ending Balance"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r17",
      "r18",
      "r232",
      "r477",
      "r507",
      "r514"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 4.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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",
        "totalLabel": "Total net property and equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r39",
      "r232",
      "r543",
      "r544"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property, Plant and Equipment, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r17",
      "r232"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table Text Block]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r17",
      "r230"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.",
        "label": "Long-Lived Tangible Asset [Domain]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.",
        "label": "Property and equipment (Year)"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ReceivablesPolicyTextBlock": {
     "auth_ref": [
      "r188",
      "r191",
      "r192",
      "r193"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for receivable. Includes, but is not limited to, accounts receivable and financing receivable.",
        "label": "Receivable [Policy Text Block]"
       }
      }
     },
     "localname": "ReceivablesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock": {
     "auth_ref": [
      "r167",
      "r170"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock": {
     "auth_ref": [
      "r165",
      "r170"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": {
     "auth_ref": [
      "r468",
      "r469",
      "r470",
      "r473",
      "r474"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-18-related-party-transactions"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpensePolicy": {
     "auth_ref": [
      "r406"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for costs it has incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process.",
        "label": "Research and Development Expense, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpensePolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RestrictedStockMember": {
     "auth_ref": [
      "r129"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r26",
      "r274",
      "r399",
      "r477",
      "r512",
      "r531",
      "r536"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained earnings",
        "terseLabel": "Retained Earnings (Accumulated Deficit), Ending Balance"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r0",
      "r103",
      "r104",
      "r105",
      "r107",
      "r114",
      "r117",
      "r202",
      "r396",
      "r397",
      "r398",
      "r425",
      "r426",
      "r443",
      "r527",
      "r529"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetirementPlanTypeAxis": {
     "auth_ref": [
      "r284",
      "r285",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r334",
      "r337",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r362",
      "r363",
      "r364",
      "r365"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of retirement benefit plan. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement.",
        "label": "Retirement Plan Type [Axis]"
       }
      }
     },
     "localname": "RetirementPlanTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RetirementPlanTypeDomain": {
     "auth_ref": [
      "r284",
      "r285",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r334",
      "r337",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r362",
      "r363",
      "r364",
      "r365"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of plan designed to provide participants with retirement benefits. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement.",
        "label": "Retirement Plan Type [Domain]"
       }
      }
     },
     "localname": "RetirementPlanTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": {
     "auth_ref": [
      "r151",
      "r152",
      "r165",
      "r171",
      "r172",
      "r179",
      "r180",
      "r183",
      "r278",
      "r279",
      "r489"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-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"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerIncludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueRecognitionPolicyTextBlock": {
     "auth_ref": [
      "r93",
      "r94"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.",
        "label": "Revenue [Policy Text Block]"
       }
      }
     },
     "localname": "RevenueRecognitionPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Revenues": {
     "auth_ref": [
      "r62",
      "r96",
      "r151",
      "r152",
      "r165",
      "r171",
      "r172",
      "r179",
      "r180",
      "r183",
      "r200",
      "r244",
      "r245",
      "r246",
      "r249",
      "r250",
      "r251",
      "r253",
      "r255",
      "r257",
      "r258",
      "r450",
      "r504"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).",
        "label": "us-gaap_Revenues",
        "verboseLabel": "Consolidated sales"
       }
      }
     },
     "localname": "Revenues",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SalesRevenueNetMember": {
     "auth_ref": [
      "r141",
      "r183"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation.",
        "label": "Revenue Benchmark [Member]"
       }
      }
     },
     "localname": "SalesRevenueNetMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r424"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.",
        "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r417"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.",
        "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r128"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r412"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r219",
      "r221"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.",
        "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r15",
      "r34",
      "r35",
      "r36"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the extent of the entity's reliance on its major customers, if revenues from transactions with a single external customer amount to 10 percent or more of entity revenues, including the disclosure of that fact, the total amount of revenues from each such customer, and the identity of the reportable segment or segments reporting the revenues. The entity need not disclose the identity of a major customer or the amount of revenues that each segment reports from that customer. For these purposes, a group of companies known to the entity to be under common control is considered a single customer, and the federal government, a state government, a local government such as a county or municipality, or a foreign government is each considered a single customer.",
        "label": "Schedule of Revenue by Major Customers by Reporting Segments [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock": {
     "auth_ref": [
      "r66",
      "r182"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "auth_ref": [
      "r160",
      "r163",
      "r169",
      "r216"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock": {
     "auth_ref": [
      "r382",
      "r385",
      "r387"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of activity for award under share-based payment arrangement. Includes, but is not limited to, outstanding award at beginning and end of year, granted, exercised, forfeited, and weighted-average grant date fair value.",
        "label": "Share-based Payment Arrangement, Activity [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r376",
      "r385",
      "r387"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "auth_ref": [
      "r221"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.",
        "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [
      "r147",
      "r151",
      "r152",
      "r153",
      "r154",
      "r155",
      "r156",
      "r157",
      "r158",
      "r159",
      "r160",
      "r161",
      "r162",
      "r165",
      "r166",
      "r167",
      "r168",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r176",
      "r183",
      "r236",
      "r237",
      "r521"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r147",
      "r149",
      "r150",
      "r160",
      "r164",
      "r170",
      "r174",
      "r175",
      "r176",
      "r177",
      "r179",
      "r182",
      "r183",
      "r184"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r70"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r83"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows": {
       "order": 12.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": "Share-based compensation"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "auth_ref": [
      "r372"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r383"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "auth_ref": [
      "r390"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "auth_ref": [
      "r394"
     ],
     "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 (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r379"
     ],
     "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 (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r379"
     ],
     "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 (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "auth_ref": [
      "r386"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": {
     "auth_ref": [
      "r381"
     ],
     "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 (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r381"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price of options that were either forfeited or expired.",
        "label": "Canceled/expired/forfeited (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross number of share options (or share units) granted during the period.",
        "label": "Granted to employees and directors (in shares)",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "auth_ref": [
      "r394"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.",
        "label": "Options Outstanding, Aggregate Intrinsic Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r378",
      "r394"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options outstanding, including both vested and non-vested options.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
        "periodEndLabel": "Options outstanding (in shares)",
        "periodStartLabel": "Options outstanding (in shares)",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number, Ending Balance (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r377"
     ],
     "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 (in dollars per share)",
        "periodStartLabel": "Options outstanding (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r369",
      "r374"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Award under share-based payment arrangement.",
        "label": "Award Type [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.",
        "label": "Exercised (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "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 to employees and directors (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "auth_ref": [
      "r371",
      "r375"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.",
        "label": "Share-based Payment Arrangement [Policy Text Block]"
       }
      }
     },
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit": {
     "auth_ref": [
      "r391"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The floor of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range.",
        "label": "Range of Exercise Prices, Lower Limit (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions": {
     "auth_ref": [
      "r384"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares reserved for issuance pertaining to the outstanding exercisable stock options as of the balance sheet date in the customized range of exercise prices for which the market and performance vesting condition has been satisfied.",
        "label": "Options Exercisable, Options (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions": {
     "auth_ref": [
      "r378"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices.",
        "label": "Options Outstanding, Options (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit": {
     "auth_ref": [
      "r391"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The ceiling of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range.",
        "label": "Range of Exercise Prices, Upper Limit (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": {
     "auth_ref": [
      "r373"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period (Year)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "auth_ref": [
      "r394"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.",
        "label": "Options Exercisable, Aggregate Intrinsic Value"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1": {
     "auth_ref": [
      "r379"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and outstanding.",
        "label": "Options Exercisable, Weighted Average Exercise Price (in dollars per share)"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r389"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining contractual term of exercisable stock options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Options Exercisable, Weighted Average Remaining Contract Life (Year)"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1": {
     "auth_ref": [
      "r378"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average price as of the balance sheet date at which grantees could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices.",
        "label": "Options Outstanding, Weighted Average Exercise Price (in dollars per share)"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r388"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining contractual term of outstanding stock options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Options Outstanding, Weighted Average Remaining Contract Life (Year)"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r275",
      "r403"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for shareholders' equity and share-based payment arrangement. Includes, but is not limited to, disclosure of policy and terms of share-based payment arrangement, deferred compensation arrangement, and employee stock purchase plan (ESPP).",
        "label": "Shareholders' Equity and Share-based Payments [Text Block]"
       }
      }
     },
     "localname": "ShareholdersEquityAndShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r90",
      "r102"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SoftwareDevelopmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Internally developed software for sale, licensing or long-term internal use.",
        "label": "Software Development [Member]"
       }
      }
     },
     "localname": "SoftwareDevelopmentMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r3",
      "r147",
      "r151",
      "r152",
      "r153",
      "r154",
      "r155",
      "r156",
      "r157",
      "r158",
      "r159",
      "r160",
      "r161",
      "r162",
      "r165",
      "r166",
      "r167",
      "r168",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r176",
      "r183",
      "r216",
      "r233",
      "r236",
      "r237",
      "r521"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r0",
      "r50",
      "r59",
      "r60",
      "r61",
      "r103",
      "r104",
      "r105",
      "r107",
      "r114",
      "r117",
      "r134",
      "r202",
      "r273",
      "r274",
      "r396",
      "r397",
      "r398",
      "r425",
      "r426",
      "r443",
      "r452",
      "r453",
      "r454",
      "r455",
      "r456",
      "r457",
      "r527",
      "r528",
      "r529",
      "r569"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.alphaprotech.com/20211231/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-13-legal",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-18-related-party-transactions",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-20-subsequent-events",
      "http://www.alphaprotech.com/20211231/role/statement-note-3-investments",
      "http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable",
      "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "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/2021-01-31",
     "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/2021-01-31",
     "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/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r103",
      "r104",
      "r105",
      "r134",
      "r489"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-parentheticals",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows",
      "http://www.alphaprotech.com/20211231/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-information-about-stock-options-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-deferred-income-tax-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-income-tax-reconciliation-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-provision-for-income-taxes-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-future-minimum-lease-payment-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-13-legal",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans",
      "http://www.alphaprotech.com/20211231/role/statement-note-14-employee-benefit-plans-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-customer-concentration-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements",
      "http://www.alphaprotech.com/20211231/role/statement-note-17-employment-agreements-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-18-related-party-transactions",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-",
      "http://www.alphaprotech.com/20211231/role/statement-note-19-outofperiod-adjustment-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-property-and-equipment-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-20-subsequent-events",
      "http://www.alphaprotech.com/20211231/role/statement-note-3-investments",
      "http://www.alphaprotech.com/20211231/role/statement-note-3-investments-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-inventories-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-property-and-equipment-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-definitelived-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-estimated-future-amortization-expense-related-to-definitelived-intangible-assets-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20211231/role/statement-note-7-equity-investments-in-unconsolidated-affiliate-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-accrued-liabilities-details",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable",
      "http://www.alphaprotech.com/20211231/role/statement-note-9-notes-payable-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r22",
      "r23",
      "r273",
      "r274",
      "r380"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Options exercised (in shares)",
        "negatedLabel": "Exercised (in shares)",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "auth_ref": [
      "r50",
      "r273",
      "r274"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount remaining of a stock repurchase plan authorized.",
        "label": "us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1",
        "terseLabel": "Stock Repurchase Program, Remaining Authorized Repurchase Amount"
       }
      }
     },
     "localname": "StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares": {
     "auth_ref": [
      "r22",
      "r23",
      "r273",
      "r274"
     ],
     "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)",
        "terseLabel": "Stock Repurchased and Retired During Period, Shares (in shares)"
       }
      }
     },
     "localname": "StockRepurchasedAndRetiredDuringPeriodShares",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue": {
     "auth_ref": [
      "r22",
      "r23",
      "r273",
      "r274"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r23",
      "r27",
      "r28",
      "r96",
      "r190",
      "r200",
      "r450",
      "r477"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-": {
       "order": 0.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.",
        "label": "us-gaap_StockholdersEquity",
        "periodEndLabel": "Balance",
        "periodStartLabel": "Balance",
        "totalLabel": "Total shareholders' equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shareholders' equity:"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-balance-sheets-"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r478",
      "r479"
     ],
     "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-20-subsequent-events"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental disclosure of cash flow information:"
       }
      }
     },
     "localname": "SupplementalCashFlowInformationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-consolidated-statements-of-cash-flows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_TableTextBlock",
        "terseLabel": "Notes Tables"
       }
      }
     },
     "localname": "TableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-10-shareholders-equity-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-11-income-taxes-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-12-leases-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-15-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-16-concentration-of-risk-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-4-inventories-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-5-property-and-equipment-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-6-goodwill-and-intangible-assets-tables",
      "http://www.alphaprotech.com/20211231/role/statement-note-8-accrued-liabilities-tables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r136",
      "r137",
      "r138",
      "r139",
      "r143",
      "r144",
      "r145"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.",
        "label": "Use of Estimates, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-significant-accounting-policies-policies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r120",
      "r128"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r119",
      "r128"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-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": "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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-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/2021-01-31",
     "presentation": [
      "http://www.alphaprotech.com/20211231/role/statement-note-2-summary-of-significant-accounting-policies-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": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "105",
   "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6787-107765"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(k)(1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "http://asc.fasb.org/topic&trid=2122369"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6801-107765"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=SL124452830-107794"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1448-109256"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6812-107765"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1505-109256"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1252-109256"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1707-109256"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1757-109256"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1500-109256"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1337-109256"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6911-107765"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e3842-109258"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e4984-109258"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=124437754&loc=d3e543-108305"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6935-107765"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "http://asc.fasb.org/topic&trid=2134479"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8657-108599"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8672-108599"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8721-108599"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8721-108599"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "26",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8844-108599"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8924-108599"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "34",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8981-108599"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8475-108599"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9031-108599"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9054-108599"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "http://asc.fasb.org/topic&trid=2134510"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5033-111524"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10133-111534"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10149-111534"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10178-111534"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=124260329&loc=d3e26853-111562"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=123581744&loc=d3e27357-111563"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "320",
   "URI": "http://asc.fasb.org/topic&trid=2196928"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=124268079&loc=d3e32787-111569"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=109237563&loc=d3e33749-111570"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=124429488&loc=d3e326-107755"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "323",
   "URI": "http://asc.fasb.org/topic&trid=2196965"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(4)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4492-108314"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4556-108314"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.BB)",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "http://asc.fasb.org/topic&trid=2126998"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "340",
   "URI": "http://asc.fasb.org/extlink&oid=123349782&loc=d3e5879-108316"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "340",
   "URI": "http://asc.fasb.org/extlink&oid=6387103&loc=d3e6435-108320"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13777-109266"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=120320667&loc=SL49117168-202975"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(2)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "http://asc.fasb.org/topic&trid=2144416"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226317&loc=d3e202-110218"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=123351718&loc=d3e2420-110228"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.CC)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=27011434&loc=d3e125687-122742"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "http://asc.fasb.org/topic&trid=2155823"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "http://asc.fasb.org/topic&trid=2144648"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14326-108349"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "http://asc.fasb.org/topic&trid=2127136"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(i)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "http://asc.fasb.org/topic&trid=2208564"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21463-112644"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "http://asc.fasb.org/topic&trid=2208762"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123360276&loc=SL49130531-203044"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123360276&loc=SL49130532-203044"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130543-203045"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130545-203045"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130549-203045"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "15",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "712",
   "URI": "http://asc.fasb.org/extlink&oid=6410066&loc=d3e79218-111664"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "15",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "712",
   "URI": "http://asc.fasb.org/extlink&oid=6410066&loc=d3e79218-111664"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123453770&loc=d3e1703-114919"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(10)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(4)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(5)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(6)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(7)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(8)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(9)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(4)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(5)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(6)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(7)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(8)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iii)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(03)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(4)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(5)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(6)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)(7)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(i)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(j)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(k)(4)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(l)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(n)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(o)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(p)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(q)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(r)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(r)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2410-114920"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(4)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(5)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(6)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(7)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2919-114920"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123450688&loc=d3e4587-114921"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=21916913&loc=d3e273930-122802"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "60",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=6414203&loc=d3e39689-114964"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "70",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=49170846&loc=d3e28014-114942"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=29639808&loc=d3e29008-114946"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450691-114947"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "715",
   "URI": "http://asc.fasb.org/topic&trid=2235017"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=123468992&loc=d3e4534-113899"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.1)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a),(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b),(f)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.12)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(3)-(4)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=SL79508275-113901"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.F)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122142933&loc=d3e11149-113907"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122142933&loc=d3e11178-113907"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "http://asc.fasb.org/topic&trid=2228938"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "35",
   "Subparagraph": "(a)",
   "Topic": "720",
   "URI": "http://asc.fasb.org/extlink&oid=6420018&loc=d3e36677-107848"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "35",
   "Subparagraph": "(b)",
   "Topic": "720",
   "URI": "http://asc.fasb.org/extlink&oid=6420018&loc=d3e36677-107848"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "730",
   "URI": "http://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32247-109318"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32280-109318"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.14)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32840-109319"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32847-109319"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32621-109319"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32632-109319"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a),20,24)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "http://asc.fasb.org/topic&trid=2144680"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=d3e5614-111684"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(b)(2)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(4)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "60",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=7493716&loc=d3e21868-110260"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13279-108611"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "830",
   "URI": "http://asc.fasb.org/topic&trid=2175825"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918701-209980"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/subtopic&trid=77888251"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r470": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r471": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39603-107864"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39691-107864"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "850",
   "URI": "http://asc.fasb.org/topic&trid=2122745"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r479": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "http://asc.fasb.org/topic&trid=2122774"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.25)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r480": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r481": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r482": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r483": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r484": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r485": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "http://asc.fasb.org/extlink&oid=123353855&loc=SL119991595-234733"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "912",
   "URI": "http://asc.fasb.org/extlink&oid=123371682&loc=d3e55415-109406"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "330",
   "Topic": "912",
   "URI": "http://asc.fasb.org/extlink&oid=6471895&loc=d3e55923-109411"
  },
  "r489": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r490": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959"
  },
  "r491": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "340",
   "Topic": "928",
   "URI": "http://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004"
  },
  "r492": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "320",
   "Topic": "940",
   "URI": "http://asc.fasb.org/subtopic&trid=2176304"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r494": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(2))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r496": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r497": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r498": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.15(5))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r499": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.17)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r500": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.4)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r501": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(13)(f))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r502": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r503": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r504": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884"
  },
  "r505": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "320",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=123599081&loc=d3e62652-112803"
  },
  "r506": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "320",
   "Topic": "942",
   "URI": "http://asc.fasb.org/subtopic&trid=2209399"
  },
  "r507": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(15)(b)(2))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r509": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(16))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.3(a)(2))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r510": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r511": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r512": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r515": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.(a),19)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r516": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.15(a))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r517": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(10))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r518": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r519": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.3,4)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r520": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r521": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438"
  },
  "r522": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439"
  },
  "r523": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441"
  },
  "r524": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441"
  },
  "r525": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441"
  },
  "r526": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117819544-158441"
  },
  "r527": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r528": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r529": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r530": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(1)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r531": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r532": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r533": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iii)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r534": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iv)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r535": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(1)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r536": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r537": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195"
  },
  "r538": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "320",
   "Topic": "946",
   "URI": "http://asc.fasb.org/subtopic&trid=2324412"
  },
  "r539": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "http://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r540": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=123364037&loc=d3e3115-115594"
  },
  "r541": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "440",
   "Subparagraph": "(a)",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629"
  },
  "r542": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "450",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=6491354&loc=d3e6049-115624"
  },
  "r543": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99779-112916"
  },
  "r544": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99893-112916"
  },
  "r545": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=SL120174063-112916"
  },
  "r546": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r547": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r548": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r549": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.9)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r550": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r551": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r552": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r553": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r554": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r555": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(c)",
   "Topic": "976",
   "URI": "http://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663"
  },
  "r556": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "978",
   "URI": "http://asc.fasb.org/extlink&oid=123360121&loc=d3e27327-108691"
  },
  "r557": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756"
  },
  "r558": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r559": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580"
  },
  "r560": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r561": {
   "Name": "Form 10-K",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "310"
  },
  "r562": {
   "Name": "Form 20-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "220",
   "Subsection": "f"
  },
  "r563": {
   "Name": "Form 40-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "240",
   "Subsection": "f"
  },
  "r564": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r565": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(b)",
   "Publisher": "SEC",
   "Section": "1403"
  },
  "r566": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r567": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r568": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(01)",
   "Topic": "848"
  },
  "r569": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL116659661-227067"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(1))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(12))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.20)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3151-108585"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3179-108585"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3179-108585"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3179-108585"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21D",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=SL94080555-108585"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3521-108585"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3044-108585"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4273-108586"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4297-108586"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=SL98516268-108586"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18726-107790"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(c))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>90
<FILENAME>0001437749-22-005979-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001437749-22-005979-xbrl.zip
M4$L#!!0    ( /ER:U1NO4Y9.Q(  ./O   0    87!T+3(P,C$Q,C,Q+GAS
M9.U=6W/;N!5^[TS_ ZN7;F?*6)*=[-H3[X[L.%O/.+''5J9]VX%(2&)# 5R
M]*6_O@?@12(%DB %.9+%ET0F+N<<?!^ @P,0_/C;\\*W'C'C'B7GO<&[?L_"
MQ*&N1V;GO6\/]NCA\OJZ9_$0$1?YE.#S'J&]WW[]ZU\^_LVV?\<$,Q1BUYJ\
M6.-Y1%S,/M$%MOYS<7]CV5;__=GQ\=T7Z]OXTAKVAT.[?VP/!K;]Z\=G[IYQ
M9XX7R (-"#^#!^>]>1@&9T='3T]/[YZ.WU$V.QKV^X.C_WRY>9!Y>TEF%(2Y
MS,@/YBA@-,3._)U#%U!L.!@,CP=I 8=&)&0O6:'G"?/?<>R\F]''HR11%LH*
M1(Q!0Y252%)S15SLJ7-#@LSXYTF6-61V^!)@GK-"%A)&0_*12!:E^G9_8"^%
MX&=GKI8B4G+Z^![YKJX?&O7X2"1/$,=I=H(\AZNKEDFYNKGGJ+-"0CXC6R(U
M17PBY<-#F4F8=KR:M= HJP7B)%6Q,& END!*3IF(VS.$@O7ZDP1%[9!2HE.:
MHB@DM'##O%))N[\_BA-7LWH5*'E$=#TG0^EY#=6DHPQ.3T^/9&K/0F'(O$D4
MXL^4+3[A*8I\T"8B?T;(]Z8>=J&3^WB!29C+L)(<(C;#X5>TP#Q #M;L;# J
M6);LVMXBH"RTR%H%%1TO'@YNJ(-".1B)$KRJ2/J'+?YX!V)[1TTU6&6VEOQE
M@?AG,]E5^*K$*XN(O^RTG"T>V8,AL$];BTK:5[:"LN01]D.>/K&7=377IS@N
MZ.F2EHKU$$-%"QU*!VPM5BP+B)]V_+.=[)5!2TMTEE_^VJ K+$=N/;E)=O&C
MA=2UX5"3_FD!P?OW[0Q=F2BU+,WRRU_-;*V>+3;H:[*RC8E>\&/T1N#5,ME?
M&XR#2F^G3)6ZDO)OWFKH:0W0^@#4&ITBW4^/&/7Q$<$SX67K]1*?L5PIT55.
MQ10Q^%#4 Q%"0UF5?)8^#0*/3&GR"!X*K^(L]1?O\=22?L898HZ04^V-'(&G
M$& 6>M"T*RZGK&#.\/2\!\Z\G;H0?_AH\@X\G33'6OWYJ5":"46P?[/4+BTK
M0#CO<6AK'R=&O[8U#O*;6@-%G,B7F.RF32Z>-K4)BGC$VUV3 H:;F@1%./C/
MK7 2%8PA@^7!DA?<N%"ZXK9+G4C^@*6V#?][X8LM^B%;2"D]2Y3[=G^MYXS'
M:NK7GNF8:KD$+5YZZ"PE?^WW^[#L_Y3(6OTY(JYU)<5:UTNQ'X\*LM;4B#AV
M;\FO\G>A;R2%DQQ5!?,$U"]71%E=,GF:PJJ'MD,)I[[GRA%Z@GSIS/,YQB&W
M-X2ZLFI3. \ W(=4)/R^7!%J7<1"K0<IM -9A42 P'$*YSCTP&*^1<@+@DP1
M8*A/ .NGNYP._SAH1KB80$5YR+(,W*932%J "G/(YSUB&*7A;VQ'!$6N)[W
M3:FRL0:F.'2\SJ%8MSR;LBS<HE-(6M$-)A.AF_73MU2YCES5T/(Y],4Y]5W,
MN(W_C(0C\*K<JE; %+5.VE#K846UOUM74K>.6FL33&&L0'QN3WWZ9'02*Y5A
MBB#OJ^:OPH@#TJW/0OKA$H  ?O; ACE<3@Z(O&R(MJ)"4]!^$ L/CSL^Y1'#
M\,=7D&4)CW4\QW+^ &D'#N70YM%B@=B+')*]&?&FX)N)]:$CMU4\,K,#Z \.
MK*%-(-U(GBDB_*PD@O1<8V7DH+]4QAIEREAWB3('SI-C\/X>,0_E8&B""/D*
M32']BQ)IX5]>+Z4=.)0GLN5)2)FA/IVOT!24ITHH3Q(H$VD'#N5[.XEPOL3Q
M//!4 Y%J M72N@T!/.@K 1;^V%TBV$(B6I@*/G"L/]@S2MTGS_<E'AZ((C-O
MXF,;<8[-#,JU,DQA/U!B+QRVWQ,%)/;7F0+62"IPX!SX.5THK\R=\!O6S;E%
M$YI./=^#GR8XT5BF*8X,E1P1OERR(E^9TBV/6-]R"EFC5*$#Y\POPK5F$4 $
MK3&!)@D-3?OJBDVA?ZQ$7_AWHUBJ=;.4>N 0G\K_1(C_!<%8:0+<8I6F8#U1
MPGJ:_.#672SOP $=]%7A42.1%G7-IN!]KPZY"%=/%50]=)@'Z9Y*B)[-#,K%
M*DT!6Q)+&\CEF-QZ&0MYAP[HT/8QM-C&>_?%VDS!J(Z$25?K1HHZ= "/H<EG
MR#<"7UJ7*?#4P2WI*=T(08>.W8F-%X%/7S"V)YB EJ$=^(B8&5=+*S>%KCK>
M)1VFJT2R=1%+MNZ$Y$.'^SVL/T+O42Q-Z=2>1-PCF'.;XYFQ('6M#$/@#]6Q
M,.E.C1(%Q![%1:* ]9 H<.@<^"!VBQWXFTD9 B3F\>]FIM_2RDVAKHZ"25_K
M<E6R@/X>)!\ZVC\G8W!\@'7&,#;7T\OJ-H6U.IHE';*K3+ UR@0?.M:_V S[
M,K(8(+$' 5V!<#$84T,3>J4 4ZBKHUC2D[N/I5MW0KHU7I%^Z-"?VC0*Z33
MS*.NC=S_1G&4U\RH7EZ[*=#5,2[IX-U&H9A&[J1P:Y0)/W#(AWV;1Q.._XS$
M(_QH:E17UFL*9G6L2[IR#YE0Z^KQL$?SFC,^I@X7:8LQA?Y:0*SF_)#U4_KK
M@(^/-CX"9H=B-^#53YZE8DV1Q<0!-.NGL53JT.F3.VUDD!_*>DT10!VZ*QQF
MZA"N/GED$.PZ$:9P5P?URL\X=130.XADD JZH@Q1XE@=ZJL_^M11H^+8B4$^
M5-9OB@3JR%_)Z98.^:JS"P:AKQ9@"ON22&#9&8D.?>7)!I.PJVLVA7=)#+!X
M=*+#N7CJP2#"Q3I-85L2ZEN>I^A0U=M)-0FVIBA3'"@Y\U:[=]M1HV:?U2 E
M:D28HD+)*;G2#=V. BUB<RX.D>=#-\;/863FJ-9&\DV1QTR0\%.LG36.M>N8
MU0#9DIA0 OBK$ZU&'5.\4\<F&_*N/*"5$+(C8@/D&1;3E7Q]*9FM" [318I@
M XD6$\RR:U2X+?04;V6).Q2BV IY8P: [#FRB.OYD3CM@ /^PQC]6G:9ZAKJ
M\&WCKG&?,UN4^8K#=/$GNLM7:79V]0RWOH'9XIVVRQ6SI1,IS)9%/L5F6U=W
M#UT?4]TIL T_H5J (=:=J"/$A4L,NIF^<O]N];?!T:Y>B"D2J"/$Q1W#POYA
M-PY4[^YM84C0EF6*&.KP<=668C=0Z"&V??>_K6A3W%&'HBNXT[GU-62JW3W>
MPI#36*8I^JBCW3I;U]T0U!1!J3CVO4=<@? KL4E/%U,L4\?3-5@&Q1)5;:EK
M!1$[ M: #LL,;R'?CIA&(<!@HP5EH?>_>.&.GP-QB6KV!D5(=XJQ6U/>%,75
M^P1:%+]*;;,^2]NLT8IMUE5L6_9R24B[/J';)YI>=+2-J7UC'4PQ5+T9T?SR
MI6[JUSI>M@4JZ0DRQ1?U)D+I@;:.%!I85>"W/8)4"35%%G58O8PLU10Z=.H4
M+NK:QDA2)\(0+=ZKX]YK=X-UHX?>L=4M,$%3DBE"E-R/4'Y2MB.&#EP\I,YW
MFP9R-90=E3,XL[22:XHT38]7B\\_@%[6K=1K>62OFV JP5SY:)R-)C0*<_ :
M=50VU, 4L4K.<5<0:^4+=]9(:)BC6N?#E!W !V8\>ES@"NV73S))J^9235&I
MY-CXVBL!<OLE5LH"I0KO"W3L4>((>F+&9!PO?;J%(&0+J:;84W+@7,&>3XE2
M*\^[J%\UCBOP%4ZK;9$\]4)-<4?S'M?<G\7S:QUUBF\5;6.I55JY*2K4W@7;
MK:=*,4GVE1:@YB):Q$]%?,3T@9&&$DU1H^2FV15JV.GVTY=8H?BY"-%TQT-T
MKHW=RI"A+<P43QK?6=L-*4U?5MP&3YK*-$27#VUON>U8TQ3!W&ZQ>,>"(]_P
MZGE#%4QQJB1&7,^IPJ=>Q1L9#T+#;N[217C];9Z0ALA/,V2K&IH\7V-$DN$U
M66E:9U,T+HE:Z]!X_>VBL5 ]S9(NY$*:/%^C??KM]([W&XULXBR:3\DL/D0F
M8S^Y&/7DQ9YA.F,HF(M7UQA&NS >;Z"U*>Z7!-8W&,+%X;D;,"HY\R9#7KEH
M_.3%^CVSRAJ!51W]6Q.IY.4%O4/J/X;[FZELBO@EVP"MB*]^3^.?NB?S#Y[U
M93>$;&/]I2O+%,]*-@PJKB7IUEMZB#D1#\%W8H5DDV-;2]&FN-/X2AMXGFA6
MR- --=6?&MG*4*,KRQ1=2C852C]ST@TUVM^GV 8]M(69XD?)SD+5MS$.BB(?
MCYZY>X:"0*S!Y+/D"0' 4&;K1_$,^Q)*"TTXC+%.>-X+681[DE4H"/\8"2Z
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
MIF,T953@</PNI!/H^;#?/SSJ]V3K'G N\ 2G(DBA2?!3\$!I]$B2)( Q!F0
M[(&,$AP@SK'@ >:"3.0@!W$F,@;/)Y0)\I<"&^"G*4Z!5883U4;0(,(Q28G
M"9GAH@XC+!!).,A.01DS'!]WT50$2SXEV!]\8U/,IZ#\G$RF">[VUH8B1$F8
M)>IGKN#SHKD4]6L>E1PN?A(8)O5"]9:($QINC)U$R9=3,$9\I/0YX\$#0E.%
MLX<3P9=/U#@'!_V%6O^P>/SGA>+O2O)WN6)OH+@;K($[S[%] =[N'W$RP]<T
M%>,5XPD:X>2XN]].<VDD<H93MAA]KZ3Q'XS8_2/=BQ"V^O(+^Q<L[$&N$>G0
MK,WD 0L[E,%R=MR%)?$1DX>Q6*R/>3^(A3M3?-.4+UKT>#:9Y+,2V)LLZ6-&
M)]:\T[T.*3!H)(#^WT  ^HG]+(E/O2*;ON^%-Z0IIPF)E&U>/>8!C8,0\7$0
M)_31?'VTZJVU9:P&5V:KS8XDX,&?-U/IB(+7>H7!<5H-NKB)!V'(L$2U938L
MJ6RL8"&'MXR&&$?\ O3^%LV5,"XHNQ,T_'XSE3_%SY\P"PD' >RR6H?<@>4^
MA:&5_Y__-R,SE$@NA^"J,!*"&L@O!FFT^6"MY2UFA,)L!M'#<)SA_&_XG&0R
M(#E_"L<PS_$0=.D\CG%8MA*X8<*!M,_P2-SA,&-$$,P',W#@$%A!J1< YC,B
MZ17E99Z1';$3=#%F3)IWL#/X'CTM)N@)1)TQ*1M\0RHG>*8,AT296/AWHNP+
MJ.+Z<E4*RIS4 ;)<UE)=I'F2DTG,K[$8RWDT@XFFK%4)-"M:-]BV+ &L#323
ME@+-Y821PP"K18:C*X)&)%'3J1QL@\Z\0C_$(0:;"3Q;8]TE]0+9*7B&#(7B
M&Q'CTXP+4$NV'(6Y,4BC7KS >Y9A.>6&>8[@%C$KQ=52>X%/VH\4?M\&50&-
M%U@V/55[K:R@]P+C+<-31*+%>FT,K9C, 2(('*0O"9[ZC$ 4<S+_RJ4; H$J
M2D,0_2 49*9;'>P[\ =EOE@W0*GIP!^4JVE4%Z6F S<HG]VO<B"[;1SPNA;T
M#O$T8Q"&<7P3G]+)A*8J#"X!8$[H$-4]'83@^C(,"@,J(N:W"4H%>(/2(9[*
M)A7HS#MP@7(M>2&#RYMX.]Q\#D1E6%J&M68W#A#?C1'#)Z!H$>B97)ATT9V^
ML9\9ZQKVC39V4'S*6.]; !9Q@ZD8#E^A&.SC85-I'#U+(W@UXM YMZ; ?WR-
MP$L#,5/4[U\C:H.@VA3_3Z\1?U6&R!3\O[VW?%9I:E/8/WL+N]9NFRGL#Z]"
MU6VSW,;.SH'_\.OL-1GC]]_;L]^^,0;OOX]G$MT8PSWR'JXF7V**TF'\ILO"
MT7U%XC7"N-8-FZD@:J9?:JA"ZR+0Y9T+1&":7WL%07P%\F;G<7RR HY.RM!&
MQM8[+?)6BI4[1SYEDKR58N7.5-O'1]4-@7X_(,K/" 1ZPGSM0P"^)H5A3W*'
ML]Y]B]K=MWM/HB&;K=YOL#O'YM_YM15'PPW)PJH'IB%]_A8&Z(S )&,P2@0E
M5?CJ]>8/_I*!&H@+#+83)7>@L1DP.=_ 9">59K_ACZR^4#G;,K"C$"DLL%QC
ME'#I*:<"'&=$4LUNY[ZZ]5LBQ1'S*>5[$$MUW_[(YD:,,5L]2A\NP?+KCY':
M=>$/4CE_Y5Z7O$.:K-KHSJW5Z<4?O/#@E.&(J)A)VGL[H*7D?NZ55RWE.WGB
M?1DXGX*DYD+8QR+H4\#37"(&UJW&[KC'@)NL:#6VRSV6A)FMK[%9[C%FN]C
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
M%&]T]D2;_12=?:IQ%++>+ ^HS*K]S=>1A(QU_="6AIG1A9<!%6PT$[C+.LL
M5@]4LW5?.X\/!?,>+>_1VJM'JQ\KBA-?U\> J$37<B0&;!K<YT)^0R&"<I#8
MNKR K0WK^;(2JD-067E+2*')EW_H[M)=M;Y#9/)U1V5__0"/DP6?1-[MXR\A
MWX_Y\$U<0GXH;I!R7-S0)>-*<X-[/"QJ>I.T-TE[DS1Z<^VX;^SU=^_![M[;
MI<>HU'T$=^_AL3)Z2XVWU&"UU%BS/R=&F9\".124$X)KFZXR6_!8?+,]MM?4
MS+!F&)@T_E#?V[9Z6.L>Z^L6GB^HKLWTUE3< 8*3[6EQ(Z?$,4W#^8+P;[6!
M5=!JAX,(0<C8:Q%7&R%KPA"AU7 @:HBI!-3 @ -N$K*IB@%98\PEH,;8<6!8
M"W*1L07EKZ2LW8" M;QMN+TUDB14[N\/-,WI%UI]( 94UMM_O?W7VW]1VW]M
M. EKL4&.!&LUF:P#7*LLC,X"WHYGHS-F@;]2Q76#]0HM*I/K/@?R@=C0K74M
M_&.Y.AR[%2T>RVANN05A&,-[6JT ?-M')GM_EQUB[^\R^KOL35M.'%X_E\EI
M]$]DQBEM$WW<T,JP[BZ0,!W2[9QN6I]L&C<9.L'E\7B\\$GT=GQPH$C8J^DT
M#BDWIINI?.Z3S;A/QG+H^!!X!@[&DNZMT6B(G[=&X[=&^^01_MAY(_M!90U
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
M1C7V$:[U&*:6J_$#=@3YPQ'>QV^'V/OX=R&UMGN-['1$!YLL$"FV.QELC0]
MF%CN7; R%P&Q8;F#H8M7"P@5V\4,<,<"$.#/R  "S/% 9+\@1U9IJG<1*O8A
M$/EB0;B^4$+$LS26RQY1YZ^*- %2Z&#)$KD44A'(5B6_RU8!2:. _BN/E]OQ
M56LPL&"R/;QXT'"SO<G?X9H.'^[4EV38PYW*BX>,<2V5SX>23<ZU6MFJG@\5
M-D32654ZO,IG0\IDCE!Z_12;7 A"4([S.%&YC&MSFU47<B#M62[90)9SI5V=
MQ4_J7]5!M/ *#E!<4"*H.C=_OI#[VT-Q6+L6!J"& QR71-T[2/E*=N[I>F^N
MQ0&HX0#'=4DRU*V"V;9DC4E +6IBPM683-.BYJ'A0K F&Z7\*N@T3R[BJ2DV
MP:*FB_ *-LT>E0Y''VC"FE>+QO(^L,4'MAQ"8,LK_LP:*"PF!&WV0M9AJQE=
M;$IKLH#.HV_SK1A,?4#EE-S_4!Z)Z[WEAP;3^]&%\=28.=#,4M..P1JM1Z@F
M(71'1#Z5FKZ&V<Z(SOG=<C6 VE[0N<!;X@4;:= YPUL"!NIG/I+*1U+9(?:1
M5&!J:3+LN'")_Q3,&(L>XR31[EK9&7+_B^4G"(@0-!,!%5F\4#%"P317VT%
M%HQG\9_%[7VTB+$).-5Q1$'&@E)HFL0/M*K!5@YTYV(.ZFY'@M8[Y]^V<][>
MU:?'V(4:8^>;(3;1(VRR-4#+P+PO<GS=/=+D@5[*/6AN,LKVTRCZWO@')?SN
MD?72"3MMX<+^A9I.Q\(J>0>"=R"@=R!XC<9K-(>GT?2Y%:.SF.VC"RHW8G2V
ML\[(7^W. VNR<L8+EL21UG8V/PL5K!P2,0^F"7N$*YQ6K0VE%[80JD.RSRNY
M>Q$5U:WMHYOYG%U-U0D4FFUM9UL9,"UJ=4[<><U92&DDU.&T:[):GSB%9'AJ
M6QV/"HI/(J\40Q+BW;$;*B=R&"=J6A0GF]0U4W?L1,YA?<Q9SM?CU5>AUMC-
M=)J$6?Q0W%5U+S).0F/2PSV^RD6J/2FI^G]E.'T@R?J@/8_5L7#U8))&+W_8
M*BDA)[F*8/@4BR43)/G,6;Z4->3?BB'&:4ZC$K><[88>=2'"V'JZ2'(@P7*U
M['^BQ7\WX$^?PKGRJ=[(/>MT.J7&T>M&""?)">ONG_LLE]/6E[#O5L:01!*4
MY U8RPF>):=AK.>H_'>B>4R1TF-#]XV@X%6=I>%3PT71(#69LM4ES>9J'CW0
M<B,Q0+.JZS+%(!77)#8EE324<B/OSLJUOKI:TE,UP=6P>77ZVPRK0V.HT#]?
MW&V-]755%,A.6*J)E;K$9GVO\_HKK, @0:V@P/LIUQE$;@IGY#7A5@.WMC8*
M?&J]2^7[;5!5U$&!9:,'G)!EG)&D0=^P;P 72FVGL)][#?518+SF="EWM))%
M@:%55W. 2"JM58KJ69P2J=1N*ZH&;/8-H$;9,!/;-X0'=4$<.WS;F@90HVSW
M;0$-X4%=86"R0UO3 &J4[;XM3GO<"T.B&=#K,B[.XSX;]6_H,N?A7.YO5],3
MMEBP5)OY#0#@%1VBNF.34*K<G!IC3!O0P1MP<Y9ZXYQ11JVKZ:Z9Z]D ILQA
M)JPMFW$1JE,F *.1'&>*>M59E>H+^_ HM^%1^Y(V7RZ+@!:2J!WC+&&/Y^F4
M\87^^@W;C&5M'_[EP[]\^)</_]J!U)6LHCEUVP,@!J*\(PURVW\< ;JAL%?(
MS(Z\H5L>ANH<>W\IN@DV7%?9AP&@"SP=JK-:.*O1G??>=U^U"N $]M)P:=2'
MFWX6X2KHYATXD7XK[QZZO;T%D-IN: HP0+=_]]T! *<\NHVY[SXPNO#1S?:^
MD=?YB-%MF_N:^_! *G1[9-]=8A&*!.R+X>XBZ;LO0*$AP%X8[L*2;KW0UF.+
M;JWH9 4#N^/1T:,.@+:SW;3T+*(C2SUU1R?G(SKVU$^GM(W;0;>%=EHIP$%9
M8UDI((!8UW.78UDG@)W1-MQD+"N#93>TC=9$IVSUTQTNC\*AHV4(NK3324YT
M2@_0@=TF9@3=EF6+HNHBT:K#8<] A\O5>/0^$,I]J/+54B[TW7K9*HB?X03D
MGN59(-2^$;!B/VV7<+&?=PV:-;%/D7WJ0Y_EH8<(S@GG:JLMKB%X+E*2OLDC
MX5')>J_R3 [G5.TQYZG<A%(1A[^1Y'E1! 6!]O@^-'VH?Q63/)LS'O])HZ]R
M7FXK#,J^L%$:KN7V374*]POV2'GQKWAA/'8^Q"O'WI-?<K6]7DW+)\J$40ZB
M(3JU^>V'TK];4])!_YK?/O;^_;I<#KT2&%[IJB?OF_>)>\,^L37M7NX31W7]
MN-<7HNG%EH/C]4KV.XUG<ZEU3AZD!KDI4%2QZ^=A13KX+W%#%>U5;K#2QYF3
MY([RQ0<4'Z51NK%_G]=[4MVP/*:S.%7=<4QD<P/-G)Y$//@OY70F=9?.GZKS
M2<?]J3-_ZLR?.AO>#S&8B0:=;]5!!]5JKNB\K0XZ"&HO0>=&M>@KE.1XI$%
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
MNEO:#"%3M%WYN_J?>_EF^<O_!U!+ P04    " #Y<FM4 [/G[G!?  !'-@4
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
M"59O.;E>;8_=Y$^-(+G^@99)+LB^Y]/[Q)%/OR0JO[3[8>2BU0[4]<JSQTH
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
M7-<2=3>?)S-*YC7^$0A6/X^9,>,\BY4H8 8%46]6ZYR]R#N!77+5_P)2L-2
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
MW]#G[.;SP@8SVW^,,RFY9KV ^U+R.4J>4WDD IYR7B;_$+&%RJ,1R\,K4\=
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
M4=[-0<<@W/Y(\Y=D1HM'EL;*4Y.^%]"')BK [L],"E'N:0&X2<$Q3@C]4O>
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
M:1-;V'XD;:SCOB]FQ;$0P"B]CY+X)KN(UDD9I9VG"5KO8*]A=<%VO13LD1/
M?L8%M,(?]I!!C^$,Q<4 7:2JX[-.&5,^-Z!CU $\'WVBZL/<L-*C9B73YH_W
MC6VU6LI\OGU]J)9XB-$[Z.UI!VQ/J9S-HE_^HR1F7&8HU@5)*]X1U'H,H_7L
MH&3A(YB^A2G,N8H>6T_R>CMYY;M='6P&;EFV>*+YZI(^J\Y%E,]A6]4=P_,5
M #M!C&I3-YQZ1+A*EH$ M&?\[14!Q"%OFJME@FFS*LS1X.Y:B,F98,]+PPX#
M%<"=NW<Z%1C<'GKUL?7TM$N+5\,"DJMURK:RK&!.:7_L4>=Y3)BQ"Z[S-7:'
MG.RQ#PL<VAT.+D;X5(5U<DKB?;@P%ZD,V0)B@W0_\&@_\(,PCXP#P?,R0D02
M>."%I2\T#A#NT1(_9CP)@W2H<6F[[L+QPG&Q?'O16B;'Z!V$+O7"=JU/.WP$
MHHSY2T]Y#2\CP*F0/ $BSW3.(("=BGD0,?"YN,Y3]4#@W[]&7'!%2'C7?@JJ
MU8N@,HG*,D^>-[)<'=>[F,:;62E:UI2[,E=Q,N<O4@%&Y/@E.S;.4@XGF2=P
M*:@@57D:_]JG+[0,-8^#M/"<99OB8_0E66U63_RY8GG:LJ/W.82VM<)SK6%*
MQ*::9HEZA(\O,$](A9N$'@%^B5U5(RAKY.+0Y!G((NOZ\L@FB_F.9D9S.*:J
M?^2@ MSEZU8 ILU5SQN:VR2#VQS<FBBW+VV/(#<K35"^-NQ-G)B]^C":$2J\
MWZ #:G$C2B /N55OE0&FPR2[/B#_4']7;=X>I"\$!XRB_ER4%LHZ=#H>HQT,
M-OS+890X/R2LJA96K:WE(?K.MQKLFOH>_!MT9*-J!AJMFT;KTEK2*I4#;%-:
M!AFL3QLX-+R;/W(EH,7=:W9R>:SG*83A:('FPU%N06NJ]58H1ZRP$B^YFQ.)
MF82CWDH)C$R.AQN70HZ' 3'^U;Y+KIDFTU#^;T%GWR[8RW<Q383K^]N/\/%,
M?A3*R?_\VV7%ZZG(Q9(]F(ZTL^\Q0_54@7.MGS5.(I$2B=6K//1RDNFRQWL;
MB-F2>[/YMED2LC-)1^,-=",()63WG2 JU,*QVR$/F\.CPVF&8)_%-?]!Y'_V
M+OJ'CPU>]24X_\N^Q#MLY<32;F/A#TF_FZ4_%]2$7ON/Q+MU\6_CF^_C_*A8
M<ML _X!]X%LV8*QL#M-73='H7>SAO@X.YV?\'+M8!,2'!AVCZPMD-B5L$)^]
MU[F944[7<THUQ;/_!72]&Q5@]S5O:LRCD3@-+C-SUOE.,V;S\C7*Z25]H2GK
M]W=[G\>F%ZO@NA:L&C%I8 [KZ/:SF!GSS>'.^DHDL4!>50[12G!H1,+S!81'
M\^T%BVG+1MO@+<2^6P.Z\PPHF=MS0,.D*B,A+EL*2@B0XGUO;L)\AN2H_^Y:
M0$F2+81U36@Q?2Y$4U*%(>M_ =]%2P'8P[%,A9G4J,DO-?) U[;ZN<S,6>=[
MC4P663)/9M JY(3"/E_,[&7LZJF%Q/E2NJ>"M,IB:(_-<"[8, 9[B&:+WE/B
MFF-O1%OUZ("H]C%(;Y'M/>+0T6TE5YD)JSS;L_.H2(J[^9$@;_7VEF8O(^V9
M'A+7\B:H@/#:GH[1A3T,IX,-X['WF])\_-!:7BA.4ORJW^_$Y%7T?>I^%.ZO
M6#=H($#$J#J9&,T"&\):#QO<DH(GFKS0RZB,VK/*=!\?L*5M ^MM+[M#3@ [
M"7$#3)O%S)1O#D6H:CZ_O:J:HWZ*5FU!D:['$"+3!L[Y'J#"26JD!+!ZEY!.
M3C)=]GB0B/<?GD51Q0YI.'YD@"34H+S5M7S_X=WS-Z1&'TP,3EC(=/@R*#-
MV6'T<T'GF_266Z+B"8X#NNZ&XH$@L@K,D;GOJR,IXEXWT#0Y3$>9$$D8$91Q
M9T><#@VX8NJ# <A+,='S)HWRYJ53KEP;.?PTF8L_4Y8M^!\O4!1MO=P6"=0I
MKDJP\4=W=<DREJ_X+UQU(-,8WGS>%$E&ZV)H#.J<E32+JWIRG*XH#5"(;(#P
M,SL3&B:&77QB)2UN620JIUW+0GG9HG& >+Z]I8LHE:X-]&/9@'NSCOA0GSC)
M'16"7* 8%B>W0HIK0R0(()4;+-H4[6F8$* B9$$B)Y-Z&I9W,%.^+[SMJ0-Z
M#BGL+'YD\";V>EP_!J]2+H3Z2-3#5DHRF0,V@+&A"KV=5ZOP(UV(&ZXZA=ZZ
MWAE:Z*T-MOOMXZ(J%3*"^FZ=S&VK[];/,=^R)0GI-&VMSV!EIPG+GZR$M$KM
M[&-://$L#;+VT2TKBFGCTN$3NX]:0IEF+R'EI1NXKUOBW51@[HW;'E<)E[]O
MC08G2:BOIZ[KOO9B1[>O;DV+($JC*50,QU'/:O47FBR6)8VG+S2/%K1.=+],
MT@W_]A$*M1=WF[(H^>Z:^\L*/4-"02J>(3;G)_L2+WFMR"*1I&O7.%401-B>
M(O(NJ;_N:;L4B $(E77)!4>*C)5:9FDF0OGJ(FK4YYP?/#34&Q? G+M4NQ8-
M,IH:V $_9&";Q]W"E5 B<3>_KGM:W%<M+7I24$U>'2H^'2C\"16;DQT5I"8C
M=(JJT2RTR: V:WT7]Z[ZMMS37%C1RJ(JA+'G:6R![W:HOOR)7>N:-90*:ZRB
M8N&,69I&N?Q1?(OR)*P-$7&G==< G",G ON$5/BKBE&H@3K2M#X18X9,'8>?
M?^*A0&+=S,S+[X9AU\=OQ^4CEW+V._!L>V:JWZ_587^@<\?[: ON5%TVZ:!<
MDG[FY4!H T\3#;%ZNI+##;2D2YRPU^73&J2-*FMSZ RV'!T.FI; ?E.7/>]\
MUI+/Y-$^A_"7D,.SY"T)[&_ 5U(N,QKL#+<CAJ(*URE[[;N,J?/*\!WP"6BO
M.U]104.@']&.5\WM]IUN#PO#29IHVP85E;E9D)V2]$6N_]WALJ?&X54(FV1\
M3:I.6.,11XV9:)=+7?8&.7'=T=DCDCU/#SIC/8'JOF.%.&-L1)3#2ED?<T_.
M&GLXYMO4S98TWJ147-@[<J [T\CQ +!&3QN1<\M745)=X3S9<YEFC+NR?^8S
MPX:S.YC\[MM?WLT5W;@,!1H-<;"$&V/V*?(7!YW9*WO,Z2,5@>1=1>(WX],$
M_)2VJL; >0JF*R?%SJ?9 ,./@C981XRP^M2/FC"A$Y(T$9X;]1*!F\-6I1@P
M,<$4XFH^I^(6[TZ+'[B7]D"!AYQN<:O*4"OP( >KACEJG_JQHZZY=@"!Y)#"
M\2G)@"EMU92A\^1973[1$N(T]Y#S&=/X?/NYH/%-MKNQ,X6Q"!WOV9#B 2%5
MPQRAEP*X,FIW#8U7=J20/2U_"B+N R:'V>-XD( **."!\HE&T;NOLL4-W[FK
M[LY@0 P*O>BA<BW( FG R(LAPT_",1@N>A9.KD0S2N,"#(4,0GZDY9+%T**S
M*,4ED 2T+(N+N_PR*60>.Q]*\4#+39Y!>'V=E%&JD%SK\)%B;8T.7Q<\K!&,
M.>\,R"W$&6E-K6PS5AT02(+)GF+(,ML3.B&24GG*I<$H1X;&OGXPY]/HO:*:
M+-]+/[&LNIC66>Z[]WET[30%7/<%TRK$$\)1GU6XPQ;\[F<R,^9<H!2R?3&
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
M^"+?(.[861C+3Q^2Z';[;C&[%PDG?K)]543N:92-8M IIR]2LXCQ0E8Z^I2
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
MF HQE75 @9@*,54UI@+95'8PT]$/GE WJB]9) 4OBHHY9M"I>HR!$12$F!9
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
M3LA"%[4#]Q\AEV;3UN[\S#UPRK6?W<=IQ ^HKU7N]O8IM3.]W*LJJ[(:]+3
MUTM KF'A92.[9:SWCHN8*>\;FJ0\EN(GZS Y<-MT/OYHI*0.U5S-"ZRC/!=5
MB3'U'3&Y!)-+,+D$DTLZ8K[6;<2,?#4NB*,3_PTS]R(Z(;M:APLS\B9-72:]
M>F18"R/7%<%65V'NSA4[]0RZ+A5;35;#U$4%3S;LS\_JB@S[TGO-LJ;Z*U7@
MCE1-\SM<D6G-1@(+)$U]V8)-.%W& U@ 6-%ZK'.@!@YWM?E/MIXW+-%BZK,
MXA=HE%$Z]?VBD6 ZSTV=NIZ%2G$P.8U4'36:;;#$8;!HC(M.CT53XYDP[=&G
MQD'Y-WA,K#KZVM]^-CJ! +/8^]N;)B"1\I3Z_K:AT8G$-!NOOVUHM*)IGP &
M%MK/DQ>:T3$^L%Q^F;Q<6J5N@>7TJS-R,L^L 0OIHS-"ZGKZ'+EN,5>F8\/%
M-'UCN9-3X7"!3=^8[CWA$2[,Z=OAW1PG>);8D!4^?O6([TNI!5Y47%VGBJRW
M*N-A-.3 M3H:T(85"O&X;XOTW\I;(E]1#NJ#*=B8@HTIV /&G-U.P<:< XSE
MM#%ZC?8J.S;NQ^P_PEN3C?JP[:Q;X& #V[5&5*%%BQ9MF\.P4AU(W"\U5Z@[
M9+[?Q.[!W3U"SHB?*:5+\A2NTM4QXYRI_(X3LI9/M,:XR1!6><U".!<L7MQ1
MOOI$[W4?YZ =(@I$%(@H$%$@HD!$,0)$T6;#?8,)8E6VUAM*#P-;-W8PZ-$/
MGEA*%I<LD@(7VY+AK:"HV9@#(](FQ+4 IN>Q2AD-'^AU1&+Y] =M@=>:EF^F
M;O#=DLH%^).2@E96VC8(T$<,T&=1]CH:W*H%>$RD5CYA*Y7$EJWQ(I]- UI@
MG:U"QMDCX4%=$<JR-E;"?ZL5BV\3YG\K,B4RN8H;J7/Y PW.&#]+DY33<R%2
MN?!UG\5X'+OU[.0FPS:4%F=&RJ?2%Y:?\@^R;R7NF&1J_[E*:I(Z\1\TN:$^
M6\3AGP=%Q7M_GYM2O*8\9&K*%#^I=D=#B[:4"+MUT\@F2SC,:%JGW%]*/M6Y
M]=W2T\BHOJ-=ON3VK:D87=7$(J65)17+&]FNLZ>^\M4ZR^PZ?:+<#X566]7V
MLSI;Y(Z2\-!7%H"BK=0V!+6UX98MU4XSSDF\R&SIX\USDV+59BHK^Y_?)#?J
MV&*FF'3ZL,M7V'6\-V5DFUXK/WV:J;W=V9%B'G^60R3B/,ZY[%J.AJ^?IHS/
M2,A_(U&J#@>DJZUZ6%.UU+8)I3>'MV,-]MYI2G5W6"XSG6</$E8KOZS<MK,Y
MT[4P:UXW31F^VJMVZRRS^<YCN1W$(O2S.=2U/ U>/6G9OE1@G[G^!N@>WC1I
MR5VEB4A(K(H/Y(NO)[D=O&?<4A.5-DGF)8D#D.W=YZML2>Z^?A[<'Q@A3^N0
M9XWKC9PNQL<4C;&D:/1&K<1/RG<G[:RLC$K^W7/3P01<F@]D>6Y)BIZ=)A(:
M+SA9W5"E&"3QLS19,J[<1<]M9BM5_DV+SQH/."8Y!%)+WM DY&5?$<9YY1 P
M7J>5=X+I2)B.5%6VM#0BQ(:T;5P19:FWF,$\M*[(H#ZU2^]3=R6]33</ *D#
M_64FC4<$H$P35^8"H%ZY/B3OBA!J]QA P,25E3%$^N](ZXMB^F^U. Z99=W
MF#>8_FN>>_ &DX*[<PKTIYK&*[R!XE]@T;I3IG* ^ U8JNY4N.PS10,LSNG7
MONP]B &6I3OU,ENG\8)EYD[M3%N90F!1NU.!LUGR/]SJ=@>E#)9Q#A>N.YC&
M;LXY7.(. :2^$V+@0D7@U#@+$RYDA%!ML@GA<G8(5+7.*X%+S1WL9'S4P]+I
M]/=>1.4":5GYMW:8H<^@P^C!>FAXW+I%ZE;^$>F%FFEUE7U+V]JM&K:FRD<3
M+S*:JL^&E[8=$?5UTM>T'A$'-^%BF5S-OXK\5A 0'Z_ZC(B;WZDB32*T!_GK
M@GX*179SKS)=BSO>0 S6#S->GG<QINRAJDFC2UPU'093PL>2$CZM!#9,D\4T
M6:S:AVD[7===,[%)WF">#M#V?(/).2!,] ;S;D!HZPTFS;0UE-]@1DQ;/&7)
M*_F31XM(H'=/8SH/$V\=D;BME])TV*&]ELWH:^'%/&9Q*HH2NW>RG5!%.TN<
MEJ7MFN%0/1W/M[_K*-#?#]_BW6>,;\/.(KO3)+NG+UX<%6^[FF?I=:>$*^TB
MM"4S6XW3&Q?O[]C1^XXX 8_E8BE5]*ZW\]D(GNSY:^1?KWTU\J<_KJ5J44'N
MI'1N5K08B+Z[,%%7.)_'@0K&RYE4(L7:=K9H51<UW= HV[3$,ES?L8H)VF($
M&X5A\[L]LTU"ZJR4<[V+N;2M59_J)[G3QRJ-(=Y=$JL.#A8Z6%T>ZW.J?B5\
ML]\H/ZF@8;/=H&.6QR5)I%T<+UX\KXPJ-!]PC'(H[+!9'*<J\>WYH;*/MAMW
M(X&8C&RY5*4Z%Z8V=D5V347HZL:CH+ZR]%)=<XP"810(HT 8!>K$K52C+)FI
M6IJZ7.JM>=:!L3QU*<$#:)#-V)5P8OU:ZLAOU%_L:$H",W1/N3++]&L.Z(F8
MNB# *KK2=^3*&L+J*YC&T212V(-+X TF>W3G:7J#^2#=NBS?4.((($#ZAM)%
MP 'K-Y@/ @I^6$KZ^. 1/Y'F6[+QV-R[3X5D1 A/T$56PZ%E[D?#T8=. 6E%
MYALXSY8E+/%-[O0M_LBXR3@I?OAC]O45I8</,/8_LMC_;3[%/U-5HFV]#'T2
M:2/3M6V'HGD[V_<IT>0$U+:U$!'9%FK;I0D6@M6%<[3M+4<#'VB<4G74.C,+
MI095SM>35"1L1?EY[$>I*E"A,M+E_P5WY$D;:C,>"4]C81P.XW 8A^O0F5F_
M4S"C;7#J,H%YNH'[JPO>;M $T9F\4Q? D([NR?KZT=&M=8& ;=@WZ+[NP/ZU
MY#SZV?-9=NM&7G=6.4]X*+ZU=!H9CCJTLZ@1>2V<1"?[;[N1;]JY5BO/[D"Z
M=7B@9RJN+'0@]0<Q9WYF_H@;ZM/P0>V.E=?9US6WP,'!HCFFL;]<$?ZM,ED8
MVFT4'&UVQ%6D;T.[C8.CFEQT0(\Q\%&;DP[H88./PDXYH*YR\0-[63D <I_<
M4C_E81*^O$?CEBC+B42JMO&%_IIP^ !VW9B2&%'8GE]H^>$_4%MTP:(+%EVP
MZ(+M!#)#]FK68$MT6#[EAEF5D"K-4U<D5>^G,S-R77'A-IE!,*CFBH0:S1RW
M3]68JF43Z]Z5P$"3A04PK%T1#YZ1P-!1LP3UIG#Z#<62FGK\+06.?BEJKF4_
MD06GM(ML8\-1APX<-2*O1>#H=/>VV?9EJD)C20Q&TQ+#0Q@>:IFK>S6?AS[E
MVLIBI<^QKMB;KBN&SMW)^E[0N8O.7:SG@K4E!IHN%=;#U&6 ";?H-6GJ" #"
M.4O8_Z/'TH3-U_DM\"3X9RJ2['$[\&\Z[-#HOQE];> _YXR?,#F5?<7*&>-W
MY$D5;\I^H<%Y?,W90RCR9^>Q9('*%MH"Y9V,U]J14$_%C9)G3(/:BNMMAT*G
M"#I%&H'Y&[I3#AJ7@Z;%\/1IW0G:-H/1F*N:J_FU5*@\OQ[[U8J>[92LUO_4
M9AA[)=>W]S:%NVHBLSCXPF(?4H.]IK/5G,1G40M5</#E=ZC,C37H:25'-I-M
MIJBEM"_DNR.YV12W3!WGU\YH. /UM5TR/;.8=WO^WA33,%75912\/$M8>YE\
M#6N $:QRNC5JI,Z[74K4<4Q$Z&MX*FWKQ6,B_U,8I8GVHVA:6V;AI982<G7O
M[4)[&FUOLSW>[/U1-(R#O!A;Q1&(/E]E07([M0'2H)K6MB]3> $MY.:<KM)(
M2CM0%?E\+3/U'>U.:HS>3-8!C=$;C-YHW/$Z0,I :'#J$AAD%V4MP(PK JX.
M?55Z1:8>\ &MLK;.BJD+"1X2ZM_@=466?2NU[ESMK@0TQR%Q<+3&%;'C 00,
MI3>LD-_4H?>&3B"T<E?WIV)&*Z<&?IS^M-!HI01TW8$E,_V+%MI%\\""<N?V
M!9-0$U@\/SLC'EAH!RR87YP5C"YD9">-[KTGTM6*\.S&"A$NXE#N&40=+,N/
MZDO*O36+Y#XB9[D<=4UYLO%(''CT7VFXWL\\V[(#2[3KX<4#I^+UQD&+9+UG
M$OLG=B^1;,C78AK: 5%VT]"*FYJTN5&ESX>B+8RK:2M[/E3J&8D79>4&2Y\-
M29,^R^WPJ848ZW$J=V2I."HKS94WLD#M62JW_R3E"L2>A4_J7^6IQ/ .%KBX
MH$1050+@?"6U]$-^XKR2#4 /"WQ<$G6%(^4;*=S3[0Y3R0>@AP4^KHNM4EVQ
MF.Q35EO$U*#GF/BJ+6IJT'-,?'T5=)Y&%^%<ERQBT--&O@N;)X\*U- '&K'Z
MU53;'C.-,-/(+--H4.R!>4IO)$_IP/YF-2;PU+EN8A^P%MNO*_*J#X4:6URN
M9(0TG$I5T,V5'(*&H@&#$5>F4$TB7[F79.K,5VY %1ZKJ2^.:K[U7D17LFH:
M*@6HPZB_X/8DQ 1V2/47VYZ$G( 0?>K*!K/Y)I'-9TD2AWQ"#'J=2\Y.:/]G
M;\%8\!A&4>;4".7[XD4HO[!'A*")\*A(PI5*%//FJ=HU/+)B/ G_S.\CI'FF
ME,=IEDSF)<P+Z%Q:'PF-P@=:-F"C1 #K9 Z<-C 2?OM(,K#.&B0EP3J1F, P
M7 *#>;@V^Y(7ZDN>[S[D+/N.L[UI4*21?I&KZ.Z11@_TDL7)4A<X:#>HU?/E
M9J3_@Q)^]\@Z$4,QUEBY_T)U)^NK.WD_CB%HA*&NJ9FH(]_3,##F?F!L2,@\
M4M?L%"#S:#/ANS6#WN"9N$X,J![/R+&$1!.36XE%-KBWQF>Q8%$89'OO[F>A
MTE9\(I;>/&*/<*>*T6C#^3X:D-7"17&UINK^JGB1>?UW&B6YFJOS;E1Q5>(S
M,.C5NFCO-6<^I8%09X"OR69;I 52(;!I=W0\C-CQL%>NX8[=4+E<_#!2DR\_
M;ZCNI;MC)W*E9/46Y*HXWGP52I_M)NW,3\*'_'*[>Y%PXFL+N/;X*AM%426E
MZO^5&_Z!1+0H>,%#59]"/9C%P<L?]EI*EJ-499M\"L6:"1)]YBQ=RQ[R;RD8
MR6Q*@X)ON:8T$AV2!.\GE/5@LOXP55GGI5TDNUQM99]H_M\=^Z=/_E)E6MS(
M??AT/J=:73$L$5:=8]47A'Z6VY;2C!HYP3I[\:]6&7QU@AU4]138RPH_TDKU
MPVRIRG]'F8&65S/:82$M4_5=K7J>G[=B9>&I-95L+FFR5,OI@1:[MX8Y4%\O
M_FB=O:R4U#4)==66-:WLT/M*AVVOLI?&MUKH:NX<5-+0L]5@,-O344.RM!^I
MU/=ZQSRDJ_7)^(K"$Q9G5JVZ-FY[!_WV4VS ?%:.,K+/^2G-JE'=Y!& :\*-
MYF]I;[N;W2&12OG%\OTFC.WU&=L<W8&Q$[(.$Q+5@#[S <;%9>:2,5^#FOXC
M6WW7G*[E!E=85F#F7G:SN]Z^T*3,95!4 -]W&6C8@P]@%27 R:Q9D,T'&@_7
MN3W9XNN6###&KUM"9K.O"QAH/%R7N/O,N"T98(Q?U]R#VGP@.UP_(T(]0X=M
M;-1)> YEW-!UROVEW.BNYB=LM6)Q%MS0,%#?T>[VN*7OCLU\"<@YU2:1US!8
M/X!E1O<"4\KU=35_[0Q[=I,IIYF.W8;#V$A/*\H=TD#.-F6)53F>JAMC2J I
MU7*)2T5\IH+'-3H;TL6=Y,:^J$W7ZRBCA$1;*9['<\97>?9(S2<PZ^U.\J;1
M',142DREQ%3*4:12CO'T85OLX8JT6LB!@8"/<PNL<EKUGQ3DRL3K55+,#"HX
ME00]E&";!/][R)K^F LZEIM\4K1U4-2-TF)ZJ*SP4MIW[L[N9MD?KA2'Z5O*
MC=+$7:DH,YS6,$@Y<ZX03:69UC2,WX/Q95VC-I!%I20!>4D]V%LVS8"N)0C+
M ^K=EG)@+E8E'O5N'4U;=#59,?U9.A8@4U\JT"01M3_KQ@&!&N6 @B4YA6OC
MNI8D,),/+$/S&^:&/][<3H;-LW*<JVS8Q*,.SM7JW;8>=M*U$,=^D<3F^2JN
M.-X[$F2K3!BGJCUT(]#FJ:BN.,E:J45P@K(K\9X6<F!MBS4XYF]H)\H6N9YO
M00T:2K'Y>8O^K,/)"M/N,?G^]J5U1IK<+WCRYCY+R[H<_;E%\H]R&D]2>=LL
MW^%*' YFOS7*MG7%:#-E_B" KJDZ\"R?(4OY'_W@"94-I*XOH5QD%Q0F&R]\
M9L@C]RQ5=6&5]<-RF[)9/?YNWC5P4?TNB>ZC,GXW].W5?^OY35@J[H"H\92*
M*T\,G'&NK,3\@I_G)@58FCT2'A18\RI-Y*2)U3YZ'LN--A:A_QN)GA4QZ,Q2
MA^\;C0RS7\4L39:,AW_2X*O4 _LP7?DN=U#]6IHH-+NO[((]4I[_*UQI"RD-
M\<JI2_)+JFZ:NIH73Y23LYA$0PBU_NVNR'=O25J0K_[M4Y?OU_5Z:$V@>:4M
M2=[7[Q/WFGUB;]F]W">.JN38ZPM'(\6&D^-0D_U.P\52(NO9@T3)NP9Y%S,Y
M#TN2\U_BABIS5T7VBY21E$1WE*_>C^*CU%(W]>]SN"=53<MCN@AC)8YC(H<;
M:.5T1*+S7\KJ2FI/'1:!P'NAX [/(9Q!6)$ *Q)@10*L2* +- WFV')NA@TG
MUTHWP=LZ0V?%I_6V4JK'BWO>5@[G**'-&TO#&"9ZUM_9H>D(M>>P3W]'BT8K
MXE$X?<%R_Q7EWI-?%_P)/KK[";J/*UE*)CORPBS%S4M4CINZZCO[7'N_:F[Y
M!B:0-1Y_Z*2QEH2V2!3;5CBY(T_Y/;3;\_Z;DY2K25R2\@7NT_INTH,WR7^<
MR+_#Y(1POIDSKB:[F$4)Y;'\* _T4NJ05;I2'>+@C'&I9.)=I[+\M;Y>T0OO
MV]^*D@(W<C+R!ZF-B]/Q)!*'I^0-OF,W;^B2\[VW9!IS+R7V"XM!K(&&:%BJ
MO)3\.[I:,T[XYE,XEU10"?UT):&AS5O3I'?,-U8]H!S0EHH-\SY'F?=9OKHT
M<:_RQN.X@/(E39\9"Q[#*)+*[O7M[*__-N+58-PQBL7T@@C#4<;(\M>84Q(I
M>)/O#_[F3IK<0FID:?>I8I%F$P ^G(U+P(1(E7OR:IZA./EI?B<*8.0G@^7N
M+R&<N.(G$0FUT?A&8V!Z :87=)5>T-S.P)0"3"G E ),*7CE@3-#9HX47@(S
M75(BMZFUYTAAD>Y$UP8M3#U]PD2*#3R14T]]:"V>+AU\4\]?:+)B6^"<J><:
M=*?@3-'PU!,*NEBUW44D>L@=&/M^VTE H(?8_]CE9NC!M1-$_ME;% :31V(%
M^+<FTC/@G\OED=!(+I3RYPU"RUV_=>" <S_DMPA#7TORY"XJU9?<"P*Z(OR;
MN*0J&ZHDW%3?N+]X6=>2@T31^OE:&%L;96SM+/N2%^I+OH)[7P6=I]%%.->Y
M@$VZCHHS!3G259K=U;%_]YDQG[J!#FZN& OCQYM+\D^F (,0)5.SQ0CCXO,S
MW[O5$LY<UNUU8?VQ\/0L]R]D14OU7<M1QL7O%ZJ+^%9WLOK],.(W64?]L#81
MQ@'?3ARPR7;*.M+FKLBP/I#8V&AQ)=;:<)J90%Q71#5$9'ZD,2^,S#<[&V..
M=OM;+!9N-6LKI')LU<-BLGXC9FM)09T*_867ISB_2I#?.(Z9[>4$\N+JZ##_
MH)V<,@,/;_F0F2&=O10C;TI2D[,GAORB>WR4[O&:F]A?YZ67MWY];8T=#FY>
MS,(B;/_\5$[F;7PV"4E4QV&ST<;#O^93S9(S*O=,$JG]*%6972]X,I-*NW>,
M1U9?F-+$J9^HW;;@Y9*JU*TXD*N4<JG/XHH3.ET-.VZ)E)?F.&&B ['4CST>
MV5PE2\IW/\6+*B]XDR'&PVEFL\K)>B%IB?;2>LR8K1ME//P^YW@5^MZ,T8/N
M=H_B8:AFLIZ;G@QQC,F\G9@,GLU"#["A\ZE'*]^Y*=5$D WQ0.\^Y#$Z0AN;
M6%,_D]2)F,S<%5,_>=2)R& H9>JGCGK38U  /_7#1YT($ #_>SA69.\J=D-A
M53N7+06]WGN1NKQ=>/,T23GU5OD9L?Q7;YW7BFP8\6HT]M#AKA9$]A+K:D0/
M*-#5@E.,<HTRRG5!A:"TN#\^7ERH#[D]>K<IZKR*3]I[<J'=K<;!H$1^D:OQ
M[I%&#_22Q<E2YQ1L.]R()? /2O@92U\?A6L[S,@YOI-O;CO!#\89.\^/K N.
MGT<9&[]?XR 4/DOC1%6@\&73V4K]U81KW5AVHQ@:8C4,UK3&* Q&8;J*PC2S
M$C$$@R$8#,%@"$;C ^G&ZG9N]G0BLU)3SKG3+MV)ZM#.?UNQE78XL+^@RF@=
MN$W=)#T$5<8?X.P&BKVM< H(W0T>'_!9+%@4!FJF>??YW92>6%)U*AX<"( ,
M,IS''TX-S+6/#N^!\?O,S[2'D%I7&=[E%_O &END_H;Z-'Q0-'VA"8R'JBZC
MX.2&9@<?KPG77R;5L+<=_D#78X';V^ A"$*E.4ET3<+@/#XAZU!:6"=LM5)I
M(<S_IF,&W-$&5U7WZA3EKFV&JW(2:F;+?IOQ4*NY? S4U@+M)T0L9W&@_J/*
MQC^02-GAL[SZK32F7MPY_(H7H[XV>)-K+4PR8*'(9+&R#FGLZZ_/ O2PQ$>A
M,RH_AZ:9%8KS:V5_#Y/E22H2MJ)\9Y%7+VN3KA:OL-KE(^WM5OJ:;<!>;I2@
ML\C-]CH'#=VO'ULY7%;<F:"7;ED32Y2*7!>>Q[/Y/,M/I.(VO1=A$!(NIZ[\
MY,S/?I7:\O^R,$Y^D\U37G$(L(,Q;839:R]>W*_5;371YYD.*;]L,UBR**!<
MJ"U:&QJOZS86GJKWCL.&(Z.[QCBL[S">'(OJ+P'K-!YNOK#8;\+083_K/-V$
MBV5R-?\J\AT9Q(^FCP5>KCE=2[Q<9'E73[+*ME9HU]S#I=_K(5TL<'*C$E-B
M&IP2'LLYLE^42YJRH:^M 0/OB-E6IE1?S:7=3208)=$U$YESJ68_,>GJ3AY9
M;]0";:F164^'Y-3.FKH.[F3Q-5HIF*:':7J8IH=I>II$!("+WQ6!5+/*6H4*
M7%D^8!G!H]2NY"6V$ T@UNU*0B)82GK'L2M%',"B +@&^JO68"$'$[Z2JJ+F
MKB0,&DP3J/NEOY(+(Q5->:P,+ ;XQ:SC%H-)J!,LG(^.",? B0RWYEPQ>3N,
M=<*%9WZ9QNCWJL:;U,AQ ? D # DZ JB!/!;@@NJDI-=F2_&DH'DTKJ"),V$
M8YYCY@J6-).3213?J2-M9F*J3SOI#VM.</KH<B9<09]F0C)*#>T/A4YID35>
M72,'I::;&#!7W94]'F8P0Z/7KAC, 'Y?31K]&0%73&4SF9B>U')G/9E(R32S
MJS^+V4J) Q-1U2< .64LFPG'--/\652#5O3]X$GZPP=%$)M[]ZF0<U\(3]!%
MMN.^/ 0?T\03))*6"8D#+V+Q(E(.8X\H!Y87QG/&5_FE*_<;;T'9@I/U,O0]
M*5K2L"JP-?J&KBQLF=$6U8G/U:T-,<FWEI?WB1<9=S6M3)(%#>LC6Y/J'N<C
MI*YUD8C,'<DW>79F\4?V7;)O4OSPQ]?;5^(X?( 5HP^(ZJV AN#)7CJM_.MU
M*JW\2?D,BSFG;KU1Z*.$S/J&UJ@M_=:0I@-1?$/7C"?*B_]YMT8S(WS-8K7H
M2Q6H><>!N+G-5=4^1=H/4-MV*)JW6GB?$LTDKVUKX_#OCI295.WB0NX$6=R^
MN%>^.NG=K+-][F[H XU3*LZD*7[ZE)D0T3:48<BKT5 6.'_V%U>6+7G=S#NR
M2/-6IAI:MX^MTCCQXU!8?'I\YC.>C''_9 QL^V=&MHT+,JFQ^YF)M3UU>=0?
M'3(P(J<>E0 O&)T78.H"@,T&"&Z>NB3@>J()JIUZ8 J\4$!^TZE+8\@3J"//
M6L,3J&8Y$.T!?G_R>J#\7LIHV!!E*X&P>MP^]7VIU?0"^<K<GE!U(F!P-]7@
M\6Y?7=@<2VF]] OL&@CE1) #2#J6LIWDT@NS7$4OC4D:A+(Q.';=X;L&K7??
M+=%8%G^(J)ZQ9U'=1WXU5^<>L\P4RA]"GXI;]JP#7GD9ZSM8*5![G]Q2J6+R
M%)L'$D;*:#IC_)9(,"$__043.D^O66<KW,E5YN<7I<M_1S3;/>)@MI)H*?PS
M^UW+&[RK!<ZV>777E-\NY?YS3$3H:UBI;#L"VC^%4;JG]6JH?]7:1FR-RUE]
MS=E<6]=NKX758E[Y*0&U"&=)PL/[-',1W+%K4E$GL;K32/C);/$L _"2)DL6
M[!V?K64+T-<:;SN3NB8H6]/:&OUWY*FHHG%,8ZI?(36MK= OD9V<!SEE!5G2
M_&;;8TE5);CA76U$Q&GR//EUX?#]-E;7^+[<7@A4'\@O;S].+FK6-;B?S<+!
M!4FZN730SNJ7.*"FY@O4MK?)0^TZ+FEI5?J%"TQMN67'J"65D<2\\4)Y-^3_
M!7)'J$Z":3*2C;P3&LE!%Y_EML9)I'!#H"[U5C,ID9"_6J69=<9<("<+"/].
M58$<&LP>Y"18T"^IBEE=S0OXDT$A<94F(B&QFO8:=AJ.,AY^#TBL0KJ-QG G
MSPL*#C#OROV\JR'CP5,)4V$\&!2P:VUI.3=Q*L4%]>OWEV$RVEO<*_R@SB6;
M5 H"""I=T3/U[+)V:,<5#6,D*/.0E%,JQTA6M3XHIPI.-!.-WD747\&),2IG
M0Y^K*TH:SC9[#2V-HFBNZ.I&\FJ2(N%**G+#"68:2W-*DS>2&3@$UI]>GXJH
MS)(;P/(:>2'.%J*J"=&#)61<A7,J,ZHR<@X6S\CO@6@D&4#>&5@^(Z_%V8E\
M2C/;P!(:^2T1C234(IX#MSI=---;A?W&>:9 ***+VG\>S8O_]72D /2JD9TH
M,*"YP8&"YF%=3;G4TOI,1GTLA*AGP3_3 N+>,0V1V=JZ)_)KJ=.W\K-E\^!&
M?1$A/T41'I J/V3!#?79(LY&>5%>]T <P[S6RB&*7=7<RAFA;6>79F@61E47
M[R>'>/E@D9?<&;4[\UYZK@G4=@HINA9I?5W:N7+A5C>VF03V:@J4U6<TZH-I
M>*942T/>_+)Y@[Z88EA+K13AN1 I#3ZE7"[/W#[(U7KV\&JMK 1Q^D2Y'PKM
M&:WF XV'Z\P4ZH#I^G%L\7Q#URGWE\I(G,72"DQ"7O:]JM@%#N'%OXZ>V2J+
MVV"$$;#Z0@E6<?2R<KY-N[,-W2 ;<YHA6;/M[8VD\39(XZRWTYP32B7+Y5?Z
MM"J#-?)@O;%<#'Q.KL3GC64$ 7/.Y75"A0-P*3BWN$:84+_.S="$\&2,&=$F
MGL#^ILO(A51OK/:@@C_FHHGI0D571BN6I@BL![WLBL3*<=S;RH%MZ\%Q)5.J
ME;2@KI_^DJ;&**QAPY>N9%P!4]?U,:'^4JMRZ^$T'J7*-PE/]I=;-6H1U?O4
M!L\ RFXB>>^)=+4B/+N'1(1RC<]#G\BGQ,]JW:LON&91J.ZL]KC4 K$?1OEQ
M*-4CSBX@R2IIJKM)XBSG:9<:([Q49="$<59[,\U9R3)G[E7R6-8ER-.C/+H6
MS>[9'#,' ]_$.7Y1M+BK4WN9SIBY+CSKDZ4?[[@\(&H\U7!?YS+7Q/'KFH^
M ZRH.FCM2)YIH>S.$F6_9?KBY1&=K:1I<$TV65T;SDF\H#5%/SL:&)/"7$Y%
MFD2ZCI6*8%:K!XZR)IAE7HL/]2D4"DVF/%]$-?MMMX.[DW@Q76/XC21_8 VW
MRG@KUG ;0<C95<?P5*9$I2#ZV/E<F4H=RV;H@[MO5;A=@]K^\MDLU' 8?$Y#
M@9-S68.5:A?FX'-%D=9RVU-5C)&KP#9BJ2F&,61<\B>)TA[D7XPKH+?_[T9!
M0O!P T?L#.GJ(WP&)@$2RS+D!P-+HPPLG1??;7.F:L(N:9 56I;PYFI^(U<!
M?] >6#/H:9.OJFNEGIM8OG:M(.2&/%[*-<9#$IE]@MJ.-KGZG?%OY_$U9SX5
M9FS5]\10C-U0S+3LR8[V,_0-HV\8?</H&]9@<]-=V;EY I,.='-_6XX=8ZNZ
MOP.AH[WVI,IPM^/"^.#)IFO*DTT66%;G*M;94\W/C1P;+5\RL+NC$VK[<(*T
M) SB&NF$=W28C-)A,O/]=)5&ZD@FY,*8Z^*+7T<D3N2ST^U'UT"PKH:W6S?G
M.)4J7KF;)4GG*SGK'_+ 6'9AE89S4!\;-1SS(W3AG_GAN50:=+=LGCS*S:R*
M'6@W"QR=I3P.DY13*>FS\$G]J_++U+:WP,,%)2*KQPN=7O4=+'!Q2:0Q%%.^
MV5^Z55S4=[# A58)57%2W<FJ/U9+FMZ77-7%*B_HK9RLUZ%7$Q-]F.C#1!\F
M^C U+A8#8]RY*5(I&*@!]K:\ED"$T)^O<HQ"@2(.L%2<J(1DAHO!LC&N>S1:
M[[89, (+"%[K:/QUQWISDH&E:5S=:'K3;33!E5_5@4 IH\"+0G(?1ME5KZ6_
M-0JK-!Y^X(!*2SK["*4T)@D21&G)+X9/QAH^4=_OF,6IH.(DY;PR%G+8UK,9
MUR@HNGB>?" .#MM;]0D65-V2B' H"YK&Z-%$CV9''LWF^AY]F>C+1%\F^C+U
M:+%V!^MA;DP"1M?;5TZ=7C:22[W59@</'QUMZ]XDY$ENA\JY& I5%6?.^,M'
MC0!Q\_$'1L1M">T#$C>G"8*)VW*,H'B4H+A0+WE%F3OR5-Q ?TQC.@]UP S6
MR0(WGXI-P(P=8"\[U3,-^-"TQB0@A,R=0^86VP%B9L3,B)D1,^NB] ;&A7-S
MI%(R1G;*&P3/0/O'$G3^X!$_"1_4G2RJ%&PJ)"M">((NLNP<SV>Q8%$8*)=-
M5F%6D*@QCN[F94.#ZBZI;H&PMQF(M^EZ'6U>7H6Z!Y6KFIG8K*4T? K%F@FU
M8UQGXI-BH;.U6BF1EB!PG];4Z<W";CXAR"'1Y6Q![\00W@G!DST,)O]ZC;_D
M3W^<[#Z;5"YYZ<9#,NL;6J.V]%M#FEK N5=KRHFJ=GY;+)I2W0)L;8'^&_I
MXY2>26-!2C>K0/A[F"Q/4I%(2X!+@R!*E8J>"2%5 PVD;:#AK<5(-OP3^0<H
MG6J5;6SZ4HX+#;V=/27+VJ@/>K/0F]65-ZLC6P)=6^Z[M@"F!S/9\*<N#S.=
MS4 ;E',RJ??]U>]TSCF[ZB8*#&0[)Y:#N0(%.U.7!$RS&J$1Y\Y"0M:,H1_(
M.1GU&&N:RNE0C#6!(@:M4?](8PF'5]9E09MM@UU\GA6_'\";HD$_P8>>J!M;
MM*)7-C&\,<KP1D_?O)-X2*_S$0,H&$!Y@P&4$\;73,(0^H7%A4E>&4*I;3_9
M)-/W%CDPOD[=*K53#[IA\ F#3QA\&C#XU)?AAM$JC%9AM JC51B!&$,$8J0B
MP5#F"$.94XG$8+2JI8H!^@NF+A0,X4TBA)=0+N@83_Y4.G?ZVVQ&*P^@DVZD
MT<L#_*JY6&#!6/ 81E'V<RC)CA>A7#,>$8(F@YV<ZH2XL<4N^^020Y<]AB[O
ME ?H9._KS;(O44)33<LQG1'K9/+U<Z:LPW6!(50,H6((=9(A5 SI84@/0WH8
MTK-M1V!$#R-Z&-'#B!Y&]#"BAQ$]C.AA1&]T*@8C>GM6&D;T\%#>"]4!<DI;
M"EO]K%";3]4QP6T>)@_%-\\O3@N^>MPL_-3N)4.'D;J@MD4X:'M.<Z8-O&A:
MM YN;,<]KGWS<4]O/JE]\\E@I^+:30-08*:+F88!EM$$6"[)/QG?3E1=<$7?
M:" JOY 5O9J_($,;6:EM:^>V/99*(_V&^C1\4-9'95RBKKF5X-#>JKZ1"_Z8
MQOYR1?BWRE@%M-LH.-KLB*N(8$"[C8.C.TF%&3.O>XR!CVO*U0]D08^@C)1T
M&0,G2KIF"^:PAY7+:0I+YC5UU0%B6"\;@3-5-+"H.?*%5H>Y*]MBJ!)#E5V%
M*EM:UAAR?!LAQPICG!E9P%,7AHD1PQKLL [+I]QBK1)2I=WNBJ3J'<1@@]F5
M,)SIXC(Q^5R14:-I4P$:79%+$\4#<WVX'Y2#N-VF/D_JK9G:R,'4)X*9"$I#
M&%./SIJ)H#26,O59T$9A MP34Y\A0Z8P_#15$6 * \CPTOJ%+>4R_.")I>1U
MR2(I=)$EG"<;3^HZ_YO'UIFC9Y? WBR1H<4;ALYB:$UJBQ2&4\DDVU J9G'P
M*>343Q@O/ST$;-UCF+^%G$ Q_M;? 0/\HPGPWX5)1*_FYW$@OU>0DD@3XZ]L
M9XM650/^AD:9GA'+<'W'*B9 BQ%L!$34"CLF<H\\82M5&Z+8?SF)%WF"[^:Y
MR379J)]FCX0'5]D"%*=/<B<+L^3>+VE5^*JO]TQ;9K_3<+%4:8T/E$MCH'A"
MKWGH:Z-3P[Y]@O(]8WQ.PR3EV;YX^K0.<\-+G,?2[@I9T)-D:]_KQ;^Z+%8+
MD[D3FB;X+3[+ALF.R<]<7^>ZQS=-4&Y7:2*MS%@=TNEUNSIXC_<32JV!U#ZX
M(34+FA'X=E?FY8@E/.HY+&#6(NUUD^^%B"E*^^5F:T/4YA1@[J'=W,/>J&7^
MMW,A4AI\2KG4<?F,R":/R!Z^6IQ:5&4\$! F32M@T)^K$S,NWT;&9;5KE'7@
M>9RZE&#Y+  7LPLI+;73Q2B -'6)#!F\'WEZQYB#]^O<-D@(3\981[MWMU!_
MR^SM2-;$W>'<FNY5R+6^8.=2O-J)LR^PW4,:V<=<S+'< ).B[=BDW1Y'@N7V
M :=G.[<;6-(_NS1#!X\?@\7\RYN8T,,%B\&"_[69G78:.SG#:P-\8+E^1+FV
M#T7!T<94'#Z]2KDF!PTNS:GX2(:29A.]JT^/+YZH_[F7[Y:__']02P,$%
M  @ ^7)K5"I?W=QS80$ XW(. !,   !A<'0R,#(Q,3(S,5\Q,&LN:'1M[+UI
M<]M(DC_\?C]%/=J963N"DDE=MF2W(V@=;FWK6DF>GOZ_F2@"11)M$&#C$,7Y
M]$\>584""5*4+%$4S8W9MDB 0!U9>><O/W6S7BCN>F&4_K+6S;+^_KMW@\%@
M8["U$2>==XV]O;UW=WC/&M^TGZAVZ<:[5A+2K9OU^NX[N&INQ M^8.\MW\<7
MS:V1#+RT?&>JO(U.?/N.+L%O-AON<X.)0]AZ%T1I)B-/V?M3OVIF<&_CW;_.
M3J^]KNI)<W-PEZW#JTL_,$,)HC"(U+^^7)V^RQ(9I>TXZ<DLB"-X5F-GO?YA
M?:L8)-SZ??*"XE7GE=6SN>]]F^N;N^8A>;J>#?NJ6,2V3%OT%',%?_1^O=YP
M!IDFV:1?V4L5/\NS1'4F;L#>.[A>S&W2?8TM9W[.+)(XG# +NE(UBZR?5-,.
M7BF1SMBFE"D'+[=D:BDG2./MS<;[:;3&=Y1(/JLD^1TF^:R@RN!^JEP?I>6L
MFT>^2ORXITJ_OCK\>AS \#OIAA?WG(V:;9ON*L_^/6/Q55"]['"!5OVO;7.K
M[)=)7(;]KNPG<::\+@Z8;F]L%GOJY4FB(F]8_0)SM;2W:>!-H(+ *]VH[KQN
M]9UXI71K,H&P$B2KQH<R'7IQ'F7)I"'SQ=+3@:8[4O8KB1TOT,UC)[;RK%;<
MZF?)R.$ND0!<?H>7\9=U_"6,Z_-_B4]=)?W/XK^$^)0%6:@^P]:9S?EWH_Y]
M T3!IW=\B>[Z_];7Q5<5J41FRA>MH;AA$CT$$A67<9+)4*R+K7>-!KYI4^SL
M-S;W-W=$\TRLK_,C>BJ3 L>XKO[*@]M?U@[B*%-1MGX#XUL3'G_Z92U3=]D[
M%D7O/G]Z9T;ZJ17[0Y%FPQ#.1!MN7D^#_ZA]T:CWLX^"OFC+7A .]\4__LKC
M[.--T%.I.%<#<17W9,1??A1]Z?MP@O9%/8A$?:,11!\%4%H:)_M"YEG\<>WS
M)S^X-6_R@[0?2GAH%$<*KP5W^S@DE?"?@>^KZ/-_X=]PQWG>4TG@\63NLBL4
MHOZ_S:[5&_QG8Y,V,))XO.$8[1]%L-3# YA^(L,36->[W]1P300@T1Q6L%Y]
MV^<Z_-^'#]N;NWN?WI6&\33#NE*=($7)E)W#E4FC&KGK<_/T\M>FN+RZ$#='
M![^*TYO#)QY<LZ<B'_X_.PYE9TVPU/QE#<3L?BL&&2*CM@R!R7^F?Y[XY0?$
MFK+C(/5D^(>2R5'D'\+16/N\SC<_\?L.8R_OV1=>PB-B_QB^2]<^'__QK._"
MR>DWX>V3WG6<2 ]U%J(.[T/C_<[VUM[N6NG=0>F%>13PU]^N#\WK-4?<;X9A
M/$ A=!P#A\E;63L/FQXQU_1*>2JXE:U0Z4U8$SA.^'6]3 51WO/CS%=>T)/
M2_0?P"=/SH_7/N]NU^#8F.F8X4^?S_N*^=079#[O&P^=S_96U7QFVI^#N-<+
M,B22M!GYR,>!HX*H#E3JCAZ4G_TH"(%=)#D<C8<-[L-C%WL.@]O>G'7EX*A>
M=V6BJ@891]=9['V_E,E%<IVA8/VG#'-5_.0Q=%#?J#<>-I>M61?Z%<QE>Z9]
MN6\6=#UMYEDW3D#'\!\W^ITZGL@'G\KMG9GV8['G,!OGGVT.%WF&%@DJ;8^;
M1&.KUFCLU+:V'TA,L['[^4UBN[%7^[#]_B&3V-T9H::)\G^J^$I3E9WT^C)(
MD*T>P(PZ968ZTSS6M^!(/VST[RM&7R]&/YOP?:G1OZ\_7KZBBN]EOP=9]R!/
M,U"SD]- ML#V!_W_D6K"@R?P?J=*!L\T@3.9? =S#Y2::P7&59 %\UCQ]SM[
MCU4:7FC >WM/<#R_QK$_",*PH/'3.)W#Z#_4ZT]P/%]L])M3CN>_3U5'AFS9
M-N^"=/U7F0!#'YZI7DLE_R8-!X?Z5<6=1/:[ 0R6[CLY=V9[F8]+!C"<X D7
M;9 -R2-(C&3!]L/FV9CG/&4_&YGCQ2!ZK/JQ];")3M'*YS'1*_C]8V?Z(-7D
MPZCE-H%M_!M=NGX>JHOVT5\YS/Q,@3KHGT2W*B4#:?Q;I=!],[Y"T\]P]=,O
MLJY*;KHRNE&]?IS(9%B<\3F<[U$+<@)W^KD7Z?$ZRFD0P9(=),H/YC+0*BXV
MDX"9]T!G]@V,#I1(X32..C<JZ1VJUEQ&.[/U/^_1/L![^>_+4$;V2-YTU6:]
MOHW?F6-9'CE99%]DJGPPT_HJ2BG:VDP2&75("'P9%K=<RB%^U1S(Q*?__!,.
M+EAQ[(-MK+F+^6&O-'.,,._[>3)4,G%DV0^X:1\ST=;]$VV-3O3HKA\D=#-/
MLS3+O<TIL]QYBEG2&# J1-.\@@6'7X)H)7M:2^S22IQ$'@P]N%7X+1+P?#=^
MKU&?LB0/=)OO-2IL@L:>727X<_1T5NF9CY[K,0@?\MV!W9SW^OBK%.A!X08<
M!K>!KR+_"D,=YKBO;SX3=]JIUZOLN9EXZ7$0H;_]5,'TK.7\[/QTIS[J&;[?
MH)MF)%ST,> *1'>M.N30?IQRN?F0*33J6[/I30<QG3KF$U=!^OW+\(N*O&X/
M3&DZE>,1#GUV*WYI3[MQ=XS=,Z9BC2KC8[^XZ8)2WHU#'XXL7I&=1Q!M W3S
M!Y% H[[[1.MW#2.%Q;M54:[.5;9TB_<0D7"#J0@7[9/(1Q:4:^/LHMT./)64
MN3U.YZC7#V/F:9U$$;]#-67-W:?-[8?(,?KL1OL3U5:8GJ)2^(PI1?LI)=#
M- 0E?NUW*8<.AK-N4BLV[E*0I7P5LS)^64L#&"F%G\J/X/>5WD&?TSA/^"/E
MQ^WKM:-Y3>(UG_6]BJQ?\PD9>1:T Y4(>JNJ3(8[./FMG& P^N//YJORT_LD
M)<VG-)-)AO'QS\4(S>^*:W:8?G&K#J:7KYC/YB7O2FMAUP:)G18&Y8-Y>@\D
M M#^9YW2M0_7S._-)?,9?U^YT%H,U7?7M^H+L+J<L95]+@9E'Z2O/'3!.*8Q
MNF1ZORB>\;@UVURO;ZW7MQ=KS?2@?G3-SD&[ZO?#P$-!-[9V3L+,?I"IWF-I
M;E%.=(GF2H?T@>LW-L?Z(LZQ_D-S=!F1C8B;MY! L\P/;R61([,X>23/&OL]
M?GFHHK@'2G'%8V<]UZ5'O"N/_C[RG10:>/E=+LFF^NRRJ?Y#LFF4[(U55WBB
MV5V(QEL<42X+*7A%7%DK/<^\@'H=V/S@CSZ\[ X97:!54N$'<#4%U<XQ/Z=-
M8^US19R<G_7I7>4K[#K:D3SH_)K5?2(>->-F-7T_0(57AI<R\$^B ]D/,ADN
MQ<9-G=LR;>*5RF00*?]()A$FWB_%[E5/ZE5MVP)(CF>9X\0HU4HN/!5MOKS$
M?]PFK^3)3[SY*SGT2K<[6''Q9];N?] Z?^1FK0[DXFS;Q/RGU7%[%D8Z-Q?^
MCV_R2FGZB3=_Q:-?Z78'*R[^W$K3$X=M5@=R/DK3CVV;C43]05D.(X&@/$OV
M_WAP9')BKF(2PVBR(>;D9<W(QT7L<^:935CYD@<AUL0M-AW,,)."&LI36BZV
M_"-;?2:]+IR29.A>USE-5YB4R'<%4=#+>TM$#U/F/9$X[AU)FF3[=M'6/N/'
MTLJMR.Z!9"?O5F3W.+)S5VY%=H;LCG/0!3*0GW#].+C#O]*?@-E-GO:*URT*
MT2T=JYL7T:TX717148D%)HJ?]/I)?$OVTL_ ZJ;,>\7K%H;LEH[9S8WL5MRN
MBNRNXW8VD(DZ5+<JC!VE>BF(:^+L?@X">"7B:B4D1C9KD9G\BK4^:47W@NVN
MC<2Z\W,C Q43?;R8MCS=6:DUA&[>G[!<2TA<%8ES*^):+N)ZN:S,"LYU#)(U
M4Z<P>_\DRH"1!ZU0$:1@^F5X)O^,DX-0IAS=O)298M39FT3Z"@NY%SS"^8#9
M,2U,GN)R\9I@10,O3 //DJHP282L=OBE3_G+YV:O:.!E3_D3U5@3LLEH9HM^
M!/QI?O^@POOZCE$U-:3->9RI]#2644HQ!\0:"J). 70#:^H 3EZT#_!7*ND#
M41>^I":VQ[E,XAOE=8]@0R*E$N7#%W[N65_F$Z(3+BAE/N6:,NG.LK _YBS]
MD5WA,9:VYGE.E*':)Y";SW<(SF0_5">1GZ,QH_!)P)1B+P#NLSH"CS\"]R_K
MZ@ \VA[X 2SA!2- [/<S,IN'[,YLI#)I/=8^ZW9I^R?G"VDY%'A(?^4R4<=Q
MG%7FS*9_M;-'Z14S4I267!?)M4IN \\PSBAO2R_+$V 1)NET5'E8D6*)%*L6
MTO#+>U?S9ST%ST:T!S$LB7\&_TD"6(O(OU8#7O4^R"PP (>'0=J/4Y1\E]1%
M$IV0S3Z(.Q6N*/Q'*/P)EGYU''[\.*P(_AD)?D72+\[A+]HKQ>0IV?:D]5P1
M[EQZH"P882ZX'?[R0;PY='Q9D<0KC/BL6,/"N.B>'CVXOK-HZ(!F4$^MG=W3
M#&;!2')R?M'8T!>>U"8)EM6.O HA\,CN2JOM6PRU;C(3?&6)G2^2:OFL#'%W
MO5%?Y7TO=6HN;O$+GO<51;UZBIJK2E;=.(K[0RE*C#@,$N5E<;*@"7QHRE5.
M@O=KRDQ^#J5MM<%+HM9-ZG/Y\J:\NS9FA#.LS6A7@.<H@E09D 1N,K+K @@D
M3BS9',!CDJ"58QO)QB4W\[MH?TWB-'T=*'S5<^3#\:B)+M^Q>0+2V+R)&YL_
M"WG<.]GE(I'@?GEYF:B4=F,Q-WN*C.3P:6GT"Z^L!O=KJ*L-600 >6 ::1P&
M/K7%/<E4C\M_QOHRCZ8U?,G3(%)I:JZ7P$ZO\WX_7.# 4?6D"UMTPNQ_W!J=
MNGS,T:O6<+F8]91VT2M2_&E)<:%,[B<EQ7NS\E9T^3"Z?'R:XXI?KHATZ8GT
M%7/2GX'(?F(>M-K>Y3B]!W'2CV%5U'D<Z65YO1L\<3(_]0E>;?'2G^(K!8N2
MH8;BED44/8#NK63Y=OV:B(%P*F>:\N/UPQF+3;Y=_]2\945X2TAX/P7'.T$P
MDDAR2\K7)P\7@!(Y VML%5?\<$66/Q-9+@^W_,D(;<6/5AO_>DY\L#(#%U#8
M/(\V_OQY/"L"^ED(Z.GRCN;"@5;Z[RO0?U\O?UJ1U^LBKT7D7C\9P2P??UAM
MX(N<P(F@5Q.Y=?/;(F[5#-I<\]MR>1UF89ZKY-YE3>Y],7:^(JF?@*3FJ^*M
M4FH7@K[FFE+[ROC7BMB6A-@6@K/]#,2R!#QAM4V+=9I62;.OYD2MMFHA3M64
ME!2$KDAHQE=!^OW+\(N*O"XV:60OCVXH5K0.TVI2Q2\M-,A!GF9Q3R5C]RSF
MUA?;.WTQ"D*8M"H_KC%-65:'#J>O[W*YMZ8DU:Q(=T6ZBYP6]&BN>RU#!3MT
MJZ)<G:ML1;=@2E8MR9(3[>OBMRNB71'MJ^.TSZ$D_)N[H.N;TM)/FLM"VJ]4
MCYC)#AS?/_95CFSBBN^OCM#J""WF$5I)H6E'Z,OJ"+W^(_1E)85>\ @=K([0
MZS]"!RLI])P&_$^AQ;U&&_]5J'"O2_ZL#L_J\"S0X5E)GN4W?G[:P[.R?%[L
M\"R-V?/3'IZ?RN:I;HERT6X'GDH6DY3O:8A2&OL2<L"*33Q*$J#H.,&6=;!$
MV+_N$AZ:7-*CF_Z?.?>A3[&WI4DX'SH?](V1W^RAJX-H8.2AQW%R(^^PN1-]
MH_R3Z$IE,HB47V[H]&_GN;JL]3; G;MH.X,:>7HQQL6D.<.8GF.E=?/!1R[W
MC_'"D;TR%;L/W[#E.FBE'.MEI.>%W?OGZUB[.'SS,HEYD>':2>2!S@%WK)CG
MLS+/*6N^XJ!S[96Y?/2](H/9*F!6>_\R@O2)JV0J7#"KG7VI4_WLSH1/[X*[
M_42E<9YX*@6JP,]=)7T:/9C?G\5_"?$)_X!_A?C'?]_)^D?ZKGSU4U^DV3"$
M_6O#H]?;LA>$0S#D>RH5YVH@KN*>C#[2M33XC]IOU/L9?[R520 $NQ_%24^&
M'W%8ZS(,.M$^.H=4\K$GDTX0[>,/@(I:G[^=G]P<'8KKF^;-T?6G=RT8:!\&
M,L<17!\=?+LZN3DYNA;-\T-Q]*^#7YOG7X_$P<79V<GU]<G%^8L,ZW>9=L%T
MS.*H)@XW#C;$9GUG>^^^H?S/R%C^9Y;!E%[-1#'WZ1Y?7)V)3T"O41R=YST@
M<$]$$EF(KX+]P]C+\="A^W%-:'J_4NV)RLO:YT9]_3<Z ,4#/[_2U1M=JWN7
MJ1E%N0P9S6M-M/$I&0AXV -@PONM. Y;,@SCK!7?S;B:,*_-W<;FQ]$5%?PJ
MP>\2EWF2YC!RD<7BFMFK:&R).!&-G3?^6Q&W1=95>"E/@BR A3BZ\[HRZBC1
M]#*\W-C;VKYOF\3H&HIB$06MHB@MH]#K*/1"BH+J8&0XH':0>C"+H9*) &:K
M_/M)4<L2YLRE1=[W40[! +J^'.(C533C*A\JCV7;5J,F\,*2$G"<+,E$[F=8
MB00=A4(B3WX:Z^.GL7C=G$_D/_[*X^SCR(KREX\YG?;_U_?P?A(?080:XK[8
MVAT]O5DQ:]:,1#N)>TP T_^+J_)*27&J2'47;,\LUT'<ZP4IJL/ [T(EHAQY
MS?YD5G=$FNTQW'M.M\Y(G77XJK'S?G/GH=SK^5>AM!/=Q S">8K0CQ%=%72Z
M0&Z-_MU'F'<8PTK]=YW^[Z-H2>][)XGSR%\?O30(_*R[+S9W_@ZWQ8F/*PQK
MH KZW@*ZEGD6KXEWB[(4+T>4S=/+7YOB\NI"W!P=_%H3IS>'&R]/)V^.[B1P
MOW,X"L@"KU0G2)'+P,:EXKJO/#14?1%$XB1+Q4$7+#F5O%W1]DRT_<0,E?!J
M]7!^6:L#DU)AV)<^H@K:SVE?>N:S.Z0QJ32#0*NQ_ED3*7"UMEV51KW^=Z1I
MD./^$/X!FSOSS<OT/3MPBZC8D>G*!/-A=(4S9 MP< (C.V 0V(/85^-Z!7E#
M^DE\B\]Y@ 8:R@%HK-6L._.?>$XW\NY$^WT\FM>#!,WNUCHL^E[CP];DX;Z#
M??BOD<VH'.P;6E)4C"Y ITC$_X(^E/H!:TS  TK+3[<E'1D%_Z'/;T?7IOH5
M)QM7&]<;XJC7#^,AO*,\=W$>;[QU1_U.D]([(O$YVN,OY .XAUB:OI^H--7_
MG :1:LQ**'5Q *_,<3SB, EN54U<YP%L=Z.Q.4H[M?L4(CV  _CS(KF)![.>
MK3.9?._*WF/?1_1YD5!T+/*>[,1?1!GL4UQU@F!DLV[*90QO#_]?T&=F--.;
M3[>NQ-[5V/K/W]OV1D\"C_EE HL;]&4(=A#81(C@*#A-"1@^7 ISE"OB/T$?
M)NFKJ3+_-5H.=! +?>=_4F#MH>IW0<IK@\%=!I 4DM9ABA6!YZ0)]SV ,O;J
M8[;#^L3GG\:>#"]Q@ \2'MOO]];KNSO;<R"_.?LE'%L^H8U4">BJ_2I'P.:;
MEG4!@+F_/T=J9K7M(;K:(U2S,1UODJ[VU"]:<Y4!UDW76W&6Q3W2N@5!\XFD
MTWI3KPG\W]N/XE8E&2+\&[TAB_N%ROUA8^OOCU=1Q]9!#RE4[6SR@/1-,(Z)
M]ZQ]%@_W"-T[NFK_D*M38<@N: ^KG4;6N*344Z1O);VN\$*9IO9XCVIL3[%)
M>QL?5ILT;FZ.N=UO$DGBXWK8:\7AF_3M?;NB#='*F=.=^SQO^Z4YYVC@3MNR
M[<83;MAB'P;CS*"SH(R3%Z3 H!O -X6H&-D,8T&M6.3BG*S9=MQLY$3526L*
MP\9FBUCEC*K3 D\9?=Q TM=9['VO%82\N /^6WVCWA!]F8A;&>;*;MFH5KJX
M,UCX57;4SB41^@LGT"=R&"WI6=#/R%Z:ES<3C;)GV, G50$>I+,EU@N_2)L\
MXZF_3Z:8,#*J'>.^*M0_'N2F.O_C^F@\^83^E5&EQC*C]W1!G32/M^@[)8M>
MG,>1>MU.*D.0I9=B.:&'#OO64'A=Y7U'<OTN IYY4@3L@E1(,5!AN/X]B@<1
M' R9PI+X<"'-T9LE4^&K=A!Q/.\J!XMQN[Y3D1@!R[DA_E"I32"@'(S[O+>_
MPZM_PS=?ZQ>?T'MG)?LQQZS[]LVIJ[Z@._OH;8SB#+[Y*P^0^('F*8DAH327
MM/HP4)Z+_>3FNSQN+_\9ASFZRRDG(DE_WCU\Y.D<=!7%UD;V]DWCK>C",<0-
M]84,0[NK[G:WE+X!GOGX3";AP]6H0[?V$^4I<D0T-@4E[*7B#3P/A)5(<[")
MTVZ,@7V3591U938Z]H%,QXF2?JSG\!8X3.2+-YL\QQ:(/+C>^A-F@/?3K? C
M'(5^#M55T2!HD#(%L5L7OARF&_<1Z$&>)/!KSOU"O2N363XKG<)Q&).PAD9U
MNM1Y7#XP/SWIXI;";O:"+(/]5R'L:A)'J&J&0Z% [1P*ZF$MJ1>8.)29%,?,
MMTJ473S#962N,+I2G3SD./'U^HUX@XOS_J/8W-K<L.(*F"10?!]S49Z;SGG
MEGQ5^O9>XG06 M=!T^KCB;/,15>T6:GYA/![):3G 6UBMQ^?=@O5GJCR6\SG
M6:^\D,((X4_-UY":O+C7E]&PACP8N!8.M",Z23S(NN;:!O!C10,C'8N2-"G.
MBKM4;W@?)XV/K_L?[8TSW#)YA/969,7F]@E#MO<:;;"QV5K?-.+%E2GS#Y<]
M,LMI-HID>WCOP]_U,-B(Q6PN\P4;K/3-I$2G$4N;#7/]:/W#"6;MCZJ2I]64
M)$K\8-1_\'+#G>*5>KE!S9 *G!S VG;B9%AAU---M.J>OFEF^[XYNF\3N;W[
MWT)_GISM]7*K>5YFI3QJFMSX-!:.%!:2/J\G<?AQZKB'E.E)II/K\]9(+2Q]
M+N06+^2@CJI5A?LT7O.SK_2K _[1\Y8 +;,;]*2-6NL$M0W3TF;T):'11J8:
MR!IT*H$YDZ>LI<*Z<_U?14T1:+GXKG"(+Q\$\&HD@0BF$R-'N@U2DEV1C+Q
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
MP2TRN$XL0^1SG%<?X%?M')4/0=[UXB-YVW.,==-B4,P!'EX3'J?N"76''I6
M%)>:03V!%T=*^? %O9M 1R),:F2GC&T!5Z.UP3AC&/0"1A6IT9CQL02Q0[(,
M'\3)\KA&(8Q)AW12&7*XJRB\M[]DL)9BFR[^>7*XWM@3L%F^Z@5>S=GGP,E]
MIM.@$:/A<&4QHL2'[BT;H@GBR26@6$-X2)>N\,W. S#7V)PUW3+0(9\B3,T3
MD+;2.X7U\'3=O5YT*N2&Y\"M,S['U'[K;262A)_V-9!P@5;C;#*^)N:H-Y&<
MH15&+.+ N <S;L'ATKU($6QG&JN!E4L)C@=_3?L%@]'/B&(ZS@F]VJ+(CDW+
M$B8/8!# 5N!6M9!]@?@+"#W7#]I4D9YI3M"-4^6P!WPO!DG3 L]3DTT%=BC,
M#)UME1<5L.1>]27@ 0%0:L45V#0,:E5=HF/B5_X(3E)4>2&FDR7#\4L].1S_
M$B5" &?:7HB3@L?#80R==\ E+"CJ"))*!4DB<.\@1DPJ1 &&LQO*Q% CGW'3
M%ZH=$HG!3GH,V2MN S488YYC!.ERHPWQ.U()55_ 39(1"C2%P+Y.$6WP0/D=
M)"*0A+0O]5% (0G$[0UQXXP"OVL-S42(C%)02H->2FA=<2LT@@P7!M&<,DEO
MA!$G*E0R51J%"=\'O\C[/@.\:(POCF/&=(W!DQTI'-OEPLM:-@31+%PB&?F)
MX>*>R6:A>[P@\?(>0HD0/S'-NT8'@II "Z;B;RRISM2,AN7UH]D*XOWWT!.N
MC0/ 3HH)R9&2;D)4E2KG,@N(-F=,&YE=$ZV<%2]D8"0""1^[IOE5B,A>/I-
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
MBS3,BPH;_=7SJ^)T[HZ>SFW;W6B:ZV'ASNJU]60LTJB^N#Z511K85W3I+-*
M#HR[:9$&=6K<7(LTJ&-RPRW4B*P'<.%&I1V1KY1AS^!!&=&AGH4MWS>,%XR'
M3P@+&'N/K,DB:%2*#NC T<0@ 89JX/J],8(?=?ACO@<F->@Q6LN!FKM2M2]5
MT&08L,9D+Y-21T41?=G21OV^\!+%+AEX!%@BBM#J[.-\E<)*VDPVQS,T[@]:
MA.,RKW N4E&>RH[2X?Q4/81,T#V"WJX.KKV0_BV\7FIT/5_ACJ2<VJETH1G5
M#66@C']7Y "S[X+-[L8CP4%*!N2<":!ETVD'1^Q091%QS P.O+@Z^A>RQ\;F
MYL>:&:(T<\!DR" E.)B63(!0L## KYEL#AP%1D63FLYJ@'4)XP'<A;UP.AQJ
MU05U9DCP/O$[C 8_*HY@F:_$94A94_0]5A41\7..!F5G].-PB!0+%  GH!=X
M2:P+C.CRQ$%K-XLS57[?,>:9I.R._-]_B>;I31/4W#K<U(*1'B8RP'1W"LI&
M<1AWAO;G=.+B2*W'[76Y_ATT8M'"?>V:4!IN.6]A'@5_Y<@>5(07.5CEFV?#
MB@WP=.LJBV2HO:2ZE[@Y?L:-EIKZ(X5-X]E[I^[Z,!(JV8&WM!2B,E$.IZX8
MJG$AF:1-#[3ORJ&*03<(E4N"?\8M\L]9OH/I7QEFO@28=] >LI<6EC@,;==S
MSD9EWR#74H9 "N3!4@.5E%RY+>1'N#/H)-:T9%[*/L%I,5;X W;RYNKH[$C\
M7MBRAVC+'MM8*]>BZ$1<W*T,XT)HWX:\AC+@<?9B(!;*&*# D#:/4VL?IV.T
M<YFH7I#WQ#7:RC=@*^N7$5%08@6<4Q5U@*K:0:@[IG=5V&<_-HY 8L$?_)R\
M^LYD@8'H1*J?C[6ZLFBJE$1^<3V,CE68,;>H44H8)9>3C!LR02(7X*-22"QB
MFG$?S%66;\"A;KF0E.H@,<.1WXF4Z[[6UG'",",J X8-"]#WW8%C)6VI2 ]3
M.S@L8EA>97H*4I?U=5.FZOD%2 ^'+?)WXOJ+F20FK\>]H4#3U93.44+WM,7"
M.<H^O5/GVU/^FG&H&W;MFQ0UOLF4V92<D\[X*12/[RY'%73@@-SU_Y2A#[)(
MUK#O#^RUI$FY>35_Q@'6[U%N* T(6]K+6KGR&K[NH0+C V$$(5="C]0LE3KO
M6-_^(AR?YU'DI[I;EC@^>C-KELN(3D_I<@ISIK3B?%_6RU/DNCBZV;2TET78
MJGDQ>13LB!1@> _;&::4S[)&W#-8..00]VQ40 +UNU)]>A[H?XE">R<.:QP,
MQ?WJ@7K(+8")_Q3%.=3RG)0"0@!P<S&Y3L]]*/,N\]&$G%-7M%BE.P:EI8N:
M%R4KD2I&BK4FQ2*C.%6A?AN\VRA;3"1ZCGJ-:)X]I5#U'^#8$RK!PI4J-(92
M1C6K4<XS$V66Q <ST2P'C\N=I[9/]+KQTE3$:>F'RK=)B87H+MYI0L<'7=5#
M'=K(L2^LE;M?'=#KW&\H)_)K+A/?$8E?502G7M_B>G#$MQ"TVZ])T"^,&>R/
M<IVIOGGBF;S3-_ +_LKE32*_F\_70'ON]?.\& Z]_%S>!L4/5JEE"Y):MKU*
M+5NEEOV84G&+]:(]^6=,*,D&U6&Z[!E3B&?2;+7S1(H>\L80+%O4OM%C!ZIZ
MRU2S4Y(]/-=] =>,-%.M1Y^IN\"+GTI7MF#0E?Y "^7$V!TN@T?IHZ@X-U\,
M7>:9,J\<%0Z+@*@C!DMB?)ABJ@%CWZ!!*4R%"E3D6;<O#M4D/%%#1BP3B-.
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
M-Q%Z'D_<;P%RQ'"X?A#"E^) MQ[3ILLQ=KO]'?[3K8D;=2=Q^L0%0D1V'UD
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
MLTHFU&E@88AW1:S+2ZPV!XM3STV&%&(B:T?'QN+2X1Q!T@M@_IH. EK_4)$
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
MRJ*6+4W/%)"#?_1$$YDD]S+(VHF3A[(ZN-QKE";1<Y(ETX[F& 0Y0('B<*Z
MY?5B<HJ,9#4-K\9L&L\%I2\<*AL;9HY$VI<(^F7'*;%9Q\1_M[Q@2%I*6,B$
MH2PCGI:;:K'0,102H917ULE4,[:#BKLK1)A;SEBUCL2&'R<0FK5MVGD&AKE=
M!!%'3/.Y!VHP[["1D/D,,NA4LNN'2GE8XJ]0(SX9J!$7>=2(*XD:P0IF$9R)
M@@*JV^WZF=8_':U^ZFV[U3I=6/W4.W;]K+Z ^OE;](A%+'89FF2H4+UL%?.;
M[PTS$8>6V^E)?5X=1M5#]"*(9_"K+K\V:[4* C> ]<?92@^5+,GM(A5)@_/4
M3G>7R?)ATAK11I,W,XJ7J;H=C^273CWK(*DW@$C?CKF4>/%H"';3679IZP3;
MK7AR;SS$(;$$N1W@8!&:#Z/>(ZL=PPC'6<80]?9)Z]?QVK?YBJZSV^<B]T:I
M5\:+:M@*>WQA(FN]*&J5)&IJDJ)^--TQ5Z&>P"LT@_238E>Y-1DKR7AFOI4
MT^'0274[FT>QD9L1]7J)H"A9]GIJX3R3M[!N<V=G'519#B1[C..Z,<8"P 49
MJ5EHJ#8$+1PW3DQ::[8!PU$WH#HMCC)DK^B'8(Y1T$NOQSR4XKL=J"C H8(N
MIGKDM )9,DD#1JC$ @-#1$.<W[N/A6#[H'1ZCK(DKD&FLD..>WH)-G4/M)QP
M1\1:WVAO8PXZI7X:R @A$F.(A55TXAA9A)_A#ZU?=4TD. VI\U//Z<I/\;&Q
MU%/.E)2WX..S49A040P-<AI1YNF7>A;=!9M+?L,9X$0X;CT[)='!<D[2XN+N
MDQ%EW9M>A34UJ6%C(2;UE-BY&&#=P'_H [9]QBYQC$N,,4ZFT=/IF-JD+DV>
M#AM""]D[9XWS!7WM"55/3LI1%34/(ENP9[Y@CV;6NWWP$F,Y@D 'TV<T-N83
MY)F<S=W?T A(D2,:IBO<?A@%T?UN3+);#Z69\$G?-'P2DU@YM%(QDM.TVZV6
MIJNS4VU*G]GGC44H*U]Q5[=;"\=SLI7YY4LOK[C+*>*<SX6R+0M5R:A]SM[P
MYF)#O(]BOC(EG%_"0D8_B6?ES)Q,.K-I7L;\)BP"1?V:/RB$*LK<#+,?1LZP
MW0G>64E]X,1\K^(M8JAOY,+S,3 ;\2>2(O/,<VZ8]Z>Z0[;%IOR<3>@LD-OM
M]I+,,@]3H+#E_+!\#2K:<<U&? <LE8 FKA)%-L\SCLG=2HU;-.Z$3O<4U@B0
M(:-0YF#DF :<VTI%^"H@:!)E&%GW<DC3]"\; YC'2;?.*6&'.$7S//7)-[;1
M)%^5S$PJF>E4)3-5R<SR9E!.0.<P.1:6>RT9!&2C<US2S6W1U$^L%2[KK%YC
M"3M+FF;2;>(KU.=.SNV&[E^KW2P! J]S ('R;W<($)BSI&?""<YOBOW2L5NU
MVGBKBC_ODPBCIF$W3K/CG UJ \:^QNY 8[]YTAX#M<FH<O8B<C@>)7<HFK%R
M#=+A*+$N(I-G\&JVL Z8$">3'E(>FWHK(3B$;3DMZ8UJV<WV.&K+S(=*7 )J
MU2"O"NL*!R2[0._&*)+8-G-^ B&%0KMC^4+##%HA7XE6FB$6/\$#\IF6/3_!
MH)G?\^&)L&U(\.!7W::1^P,\X6P>8O&+7Z/P^'_U-W/7RQFI^D7TF$1Z"XHZ
MX%;"#K66*2^HMT_:\Y877.GP7II;TKQ[:Q>^-^E5&O-7/)B5J5XD$AHGK+H8
M+!FKE"03+>9SJ#PJ]XTG1G68N>(#E@*((RE]3@*"RW E%^#PMGW68B\RYTR)
MO 6#/9+SFP S]$G-KC<;^>#1>&[$6 &NDR8#4T9R'$@A/XU65Y&HTA991&+T
MPLP ?C >;:"VX>8HUN)A?Y/V5<Y3KLW4=/,I;%/_SHXCS=+^=IL=;RJ$' -C
M<7+B04+2H+"+I'!40M'3$Z7-\>7&SDT5T[AJ4_B;0NC$,NAX-2&L\Y/.K[9L
MKI__UOH($>@2*/2]D^ @>R?&*L8$OTIY0MAI;O7)3X*<*-PSZL \["^@%IAB
M< ^(<Y*A'K-K??"#$4GBYSVUY*%L2/U2/SEO+/[08>Q'<0[P8XYEP%6\#'#=
MU3(:35X&_-0N+.-PY?:7S__[_?.'SW?_M"Z^?K N+ZX_WUU\L6ZN;K]]O[F\
MVL3LU:V]_05)H1*N,-*4U$SA.DE?A0F;M3-M^2N\"]<9^BGEH:D,M-FL:Z$V
M\P'C^5AR-:Q7&H8CP9&POZE?P=I0!<.OI2WWIF"E.85;P1K.WU#=9<EJ8)F7
M^'JYL'"S1J%@8"-0R><=F5R1U4EZ!R:]7<XX!X71.&],^4+-+MW+0MZP+DN;
M*-1\>FZ?MNK3[EE2WH O25\O%\N>FEL.EXTX@:/\/K0:>$Z]"E"<=I3C:UYN
MM";E+V_8K4:6O\E]I^>'3NB6?*<)^UX_9,_Q3ZH0>/"C41(\R9XE>&L94[#@
MY#S4^H[+9?AD8/V)<X.MCW";"#1@^,-642FJN>]A<$GVU,JOT[=T#,E)*<T
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
M/9D5'_X+I*9F"375MDQ-C:;=.&]LEYI>MFV4WQU"B<\'3X]9RE^HXC2J:7[
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
MS=@KS(?\SS^%$R?6%9QROM:.V4[]^^SJX]5%S+=.69.)J/%2B0A]]LT33'6
MJSS VFYS?(6:9.ZM5.MGH-6WU:?R5:16X@2[W^N\Z^-,6@445X]#H#7\9X&J
MD <1CL3'.!J4(36#*1V,D!MQR"3\X]TY/Y</.34K,*4])+.S$C*K960V9QG'
MALBL7FO89[4MS_ZHL/\.L#0%>[T2"KS>1Y&7H 7FV9;X*2D7"'$8"QSVCOR#
M:41G@$B _W'V  WP!=0%=%:@+)$ OO4^X?%C,D;$#[XKDEL@A"7+H)MVLUE!
M?E0T*FGT? 6:=M4TVFK8C?JZRWM74<ZR_K*57>>0K?6>;, DKO9^-_;^9=N
M^=UIMFDAG^(H2:QA'/7\%<.)5CIT81W:KJW SJ,3O:8#71+\MV4WSG=1:59$
MN16BK*_ L'LV4;9J]FEGW1 *NU&87(5+MJXJC]YI8'5+_!R*,!%)!4=5W:6"
MHUI5Q_:M" +@+MNZ%Z' PE *.GH#/_23%#GO0>RX.;J+8 GMY@H,2'DTG_A@
M+D+O(G<L5RP/E\QPM.U6:]VUVWMH1NXD,9VNP/!;*S%U[/K9EL>JO6P[J4RR
M?]A<*JE".%B1B]=:@=HPSQU^#@3^@ QO'/^20TLW/\>J0NC8*_HM*R9:5%.M
MCW[/&AL'C%JB#K%*0;V4-$BU]U4*:A?L19F"8AR#:"S@MN/^_PM0JV7%DXN:
MA3J0*EV])<>Z@ G87+NO5R6E]H8TRRKB%K7X5D6:'?M\[46[56JJ4J&352@W
M#5N].!HH11J%E0+=NI0JJXE<6H'R(7^)DB7EU)E]WEAW(*72H/M"FV=EM49+
M:]#GTF:S;K>J\HY*AVZLO"/MBUB-5G\E/<[758E'=9>JQ&-5B4#&> ,F4WP6
M]4"9Y""_G%[/#WSX<<=-U5U,SY\U5F!<9GH;NUOYQ/X0:3_R/H</(N&)JDM6
M;&X[-5\1TIR$5%8TM*@EN$9".JOO=T?TGAM+9:(=S]D"*H(__1 ,VY4(=Q03
MU&<ERQ=GP;)2J\4+,+KIK3Z%BP?'#_!D/D;Q+3#=)\</I_EGU8RL'2>?5]/H
MIZR 9_$"B.?0SU09;B6P%W\].J:)!QN7Y:\K"[U<C']&<"Q0SM) MZU05$V
M6P_,K0(929TLFV4RO_4U"G66_:M8MCMP!X-T%:%NA5!7@:VT/D+=9]R'%;H,
MN\XG+Z7PJ]K[O2VZ.RC++U]T9Z1!*L-OV_IT%2A?INK,Z=1E@[C-'=2B%7UN
MA3Y7@?"U8OILM]<]!G4+10,EUM\A% U4M1"[:!WHXL&N +83" 7UX"?(^O"K
MRMRFSL\JKK]$7+^S"D"G++5VD::QWQU1PN4NNG9B$2[I''?LUK9QABL:FI.&
M5H&_M X::C;LQNFZ@RR59S=5=E_OJ[0^?'.YL[KZG#OGI[22WXM0+(VA5K?/
M3C<]-[-RYW:6/E=7]K,B^FS9S?8!]E&]''=NOW0GSO+9C]#G2YLXW5E%.10<
M[W.[4MKV66O3\:5J+/J^$.DJ:JY60*2-MMWI;#K7/?\X]$IM5E'0?; &WCN)
M[UK"B4.@\\0:BABX>S  GD_Z3ER9"+LF?9>IDKL6\2T>9E$*7\E35W\G6EA.
M&M=.6O4=D\,5O>X"O2Y3++<!>FV<')K=4"G8W52P'_Q@A#V?E8K=%Y&U3#W2
MO")+4L/22G;7A%9%L;M L<M4*&V$8NLGYXT=H]A*S1ZDFF4_]E$@6R+" KR_
M<R]RBC:QHE&:I$Z(-+/K6G=NN; 3B;BEQ-;YPE5"I0+K3WGF%WSD7T>#KHB_
M]>C:Y%MVXL_P%NI-N]%HV>U&9\>$646Z6R+=A8N3MDBZL%S[O'.V8Z1;Z>&#
MU,/*W:TT\3Z)LX5KMA819Y(DQJ3:\@+M_!R$VJXY%A7Q;HEX%R[HVBKQGI\U
M[/II:\>(E]76;VDW\I[P-RR3?F?]EP6"V?,?^*=2=?*7PGK^\C9;#RTGITRD
M+N'%O,DO8SCE*=;_^_<H2M\6GL4?VKPEMI6(V.]-)#M)<285NP*[\+$KM"\L
MQP4--73")YS%$$8I/ B.W'(0QB\5]SBK<>C$*:+YI7V1H$(S$/UZ?NB$K@\7
M 8&D@F"_3J:_T\IW#@[*<@,G 6*[_O3^[T=%2JK5?BWC0?D)L31]=$2W*]SO
MX]V-OF')'EK&0^3W<S?H]X[CZ%']I?@G5P2!=?WIZ_<_ICZCW%"9Q!A'[_A9
M%MA2ZK&:F',_FS_VM>5V??'IZOC]S=7%WX\O/MY=W;RQG.#1>4J4U$++*!2Y
M-W]K]05O8P-Y3AIV_UVC_Y79?/)/1]9O97O^MP_E>XZ'MXH=O_MV^<4/?V0;
MQ00U[V;-$@W6&(4OSZKXRF4$STO/UCUS35/%9V.R]6LNYE^C)/5[3_GE@H[J
MOKL(AGW'NHXCZTZX?=OZDGH@!;KO-BP)5FOXS_?JEZ8XO-5"$.4E*<]^% #3
M)+@;L-I&K7[^%KYE,61B;H\R%E3<5%^(FPHLF>=6M>[F,+4TWVU.0$L>8NQ
M7AF9$,B/4F_KWY.AX^K?F7-!S=SA5\ME^V+RD<_5#ST1DMS_2>XF&P S_=<U
M8+-LYRZ_=_6-NF,VV$0EM*H';/5FU0:N=@-!"@'+AG\]:LRV8I[5"3A!7A7O
M-8>T,M8GEY>37[!;J-1 +*&+X@2\:5)4[P;Y541<;> J5CMGW';W])Z6.NW#
MDCJ_BX'YN#?@AO?!:Z +)O_IDJ/,MVGD_OC]-S%X)_^SZW+K4'7'E*.Z=GP/
MS,_J@';U@&Y$ZOBA\/;DA'98<TW99/5LO<659MLPR\W=5+X[G,G9B%7SY1S#
MTZNS7?O97@RB49A69WN(9WOI#/T4W>CJ< _O<%7A='6ZAWBZ!!R\A:/=E7HR
ME5,YK?VZQ1KOP E=83F45?H@7($U&E:S#J]7JY_O>"'9C!N>;QYCKU4K ([X
M_X?[R/4R_Z=S>)RBNXP&PRC$E-[%3S\YYD +Q5G^H&.855]C?&%5Q30-N]-I
MV8VS9H7FF+_AI"ZFK=!8:RTT5@(J0A?*-#/?;UFZ.J\@0G><J-I+$U66S<(
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
MK0*E!<4._GN5G<6-2-+8=U/AX1\N0B__@7'EM8A]G*):;(9V@Q%R_-5/E\8
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
M3-[59<GM<9Y^1D"7_7IRG6..$T9%22BE,4LR?/"DY9('8#H,&)Z6CH5G=9V
M8JM)7Y HU>Z%T:,\9;'I8\1+'42P_QB/@[W \#8+SKQGP^T*-JTK%GT0J13E
MEI_2J8 / V9EHL+%U#8MQR_KIBE^7>' WCYG@5N5P.L43TK$ ^WC&?,'A;+,
MCW?E99DEA:DR )>_0[]W'$>/^D_%OV$LSII=_EKN:D^N>%5/FW;@=-IJ5;_I
M\*;Y<_8CG8W:I^*^E6S;L^J#QW=QP7,HWVLZ![TQ&SD'];2I8JS#?*=7EA4H
M%W_+_[+=ZN5GU"]/X(4<GY0>T-VWRR]^^,/85[,*>H'-DS]/B'J-B1>;C];&
M"@2_-['EI"1,C&\_3Z!M,P73FZJ6WL%2Z5(!]LQ8-C?K%V'WIIGV8P7%8V)T
MXP7=&]+KZB4/T]_0$#;TPY4)Z7KH?H?I%ZAH)]BT(*W[0+W!DQ7XL!V>'&'+
M)JX:JN"II+(5@?[W0RI@P0)=3EY/LU;[L1#*7@W3/N7AN:B#ZM**4$)5,/5Y
MLNX/JBO"?&,6#V=)EQ=P8SGIP^3WSQDQS^#P=2]FZ_QO; 45CI#)E@4'U'#V
M8W!%C[&.#$.O#KGKLE1)A5XQAIH/,W@1K'R*$ BCE$4 Q3LX#9@MABME5.Z&
MHZMCZ^N+P,,"LTSLQ)B9\ZA*ZZ)L\86W=>*8;D6!#C^V>HZ/!4$!1D2QL.[>
MPFPI7#$$SA,)OST5K:E2/<(GP$(+JNW/EFSSWL0"J\9DX<XHU+_>.WXH([I1
M@B%7'9R%1X0BE>$"WE$7?7H<DYAM"!=W)F!'H!R..#F5#(6+(1BY(!V,&8BT
MC\%;\[!I1_,YV%2$'DE@C$[0BPVB6'"=W91S!,N$SQ'##26'%$3A_3$&BXKG
MJ[*]NM<VES?.1VQ.F%/&_UMIAF=IAAOA"M"RP"533=_."]$,%RK'G^W+X=N
M^J5C_=+$QO K>A]*/"+[1C[6D%*<FKL3HKDD?!<E Q53 /]+5B;)!H9F]$AL
M3C'E:-1->Z,@*[7P$U-&9=6U70R#JR23"H_*=7%31)=>P\7JQU3)6"ESQNXF
M?OH)-Y*-[\1;D(:/6/)J6UPZP-E'/W9'@R3%I>/5@9/*\'7)+:860 R<)RYY
MX)0::1@SZ$T;@^5_JFQ8[9A^':ZW-'=5:V 9HQ>\B]EFL]88#4$W].'5HYB4
MUR,L21Q'O1XE D$Q4L$PG/*/,'JDC"NO O16-QJE5(WC G6!GC)"V53Z@>1!
M><HGJD%UGM3R)*TIZ2[5<!]+G('.2"NFA<4^]JGC2N=B<V\E29,/G!^(&P8^
M=2 D" @>Q0"4>.5$/$]5H/40 JW\_^Q]:W/;R-'N]_,K4'JS5?8I2LO[Q;MQ
M%25+CM_8EDJ2LY5/>R!B*"(& 2XNDIA??[I[9G A01 $01 DD4HE,DD,YM+W
MZ7XZ\?JSWST-12$W0S^%M(S08OU4O;%-X:USW:SYY9!@](+!C?(*+]5 9DXP
M&QZM5\>O4:*K,E^E (\SFV<[H(EKD^G+C622G&2*4UZ>%'H1Q43W@?#5^=1Z
MH8).ZPD,2"PNA"\\T^-U+GHP_86B8]0*7#$$"Z1+-Z%9-#&@,R)92(-.?5\Z
M6FA'TM,!'?9JBCM,3(J@YYZ8^XK7N6[(EA<*U7^M7WO@OSIN*YRPZ ZGGW")
M+%+O><$/74QBE2T.;YGGH+VT2@9N)P/O;"QK<.=W!F;ZFQK&"JFL)#%N?"(R
M46X.S[24.W/\XC&R;B;7O2#MB.\IQ D6HC?U#/I"8UC<HW,WG43D%),:>+'[
M!0@J%)U@08D")FY#HQF(Y<&.-79?"9DJ9$/!CT4:E\+S'W@F+J8O&3*#E2<I
MVP2/\!],6(-I/C-*F*"T$UFBS:,6*HH0F=81*J2B)BX+$E4+@(P=K-'679)?
M]"S)++J)E15A,UC>N3Z5\+'T*SZ52#::J,T$-4,Q"E6:I2C<8+>X@KE0$H[!
MWV:4Z+;<9-P61\X%2YU)H5%9.H^8D [CWTXP.&-+P0VV^DQ43L)!H,=BP-]^
M3HG(U_.3Z/A9&U2/B;8KY9^,+51JSH>B>(/?G&:6@.K,72W]?M F?,4]>$1E
M%5_QM"0&Y=4NUZ8I"YV2+_$32AX6KX'%/5M_*;&AV5S.;!"U1<M55%G?OK2,
MS<%=Y0(ZBP"!6TSC[*-$Z'"4=^!@4@K1JN9Q^;XXP4N69$Q%8#N?2CPRX.:L
M\^=*?KF</\YG;/BF.^=RN[]1&41J>T-RW)B%3(UVK]F/0%&>.VST0?-L/,6S
MC\W.HN57NG-=1$+>-7?%($+G_NH0FYY]_*:.)J!@[$4MM9K7\IY')Q:E=6?T
M[2\X_#TG]C_O,9[&?Z6;^M2;YL,$K7H"$ZSE@5WO=R!05O/%>:RHV\',]GWL
MZEN.Q]Y,./;&BG,O6N"DQ6K/3>#<(I8!!HEM4Z?@P(G(G1NY8/C^!L@!_G)V
M+'9:2;JW$CM%B)UTIYZKU.DDG'JO'$*G<"OG*[JZE$4 WCU"A DHMV,5-OYZ
MOX26NV-ITTV@NW8E;8J0-BF//5=QD^3@G:J-\R #H84*F*P1B^)X;S=4+W?[
M4Q +SH>VVV7SV[+$+N+@?9:!KW*[J"AQ:NDUQN\ULL;XK:K-3/:J&@*?C;D8
M"@^E8HK+ J8AGAU#]$)Q=4PH;-'0/V($Z+:S>/,18([Y>!U42NS?@U3WG]O=
M?WZV+ WA"8&;OY@NJ#@=B'Q(UQWRJ[B\\MYI7(#*+2 2#?9'X1MT_!>ABX#N
MGJS9?@YOC,;&.L+1GN.=&;*FOT_BWBPFQ3PH#@O!K#W @YIJ:XYR:<'_A4"*
MAP^7 9Y'[!-7EA;D1P=(^@\A!* $V=_J2%C1X)0= 93?^DV)T,$MXH9?!)_I
MZ9+B_3M*#IAJ$PHZY4,RA]_,FAXAG5 "^A3%(0K3BS#=B?VD'>1[+NXIZ=+8
MOP25MYRZ';W-?.<PIF"Q7M*$NQSV-G(-'$(\5ET6@LS2&&;/.$O9I70Y+C.$
M-KZ=U<,).XOWL1F,H)0>VPWM*%YZ+LK">/NFVTX*%2S9-^?;S3S)Z=A\YKVD
MT.I2E",$/%#IVLRZ]@98^E^8]'4[]L7?%^J,, TJ5:-ZMG\:>A9W1J&M00X/
M=$-H=TY#V09B+URX%$'-TH,]$:DP(GM:"VJ';&:P%\0[%$C]H6[- I)$ DN'
MGB:M0FDU#N4JQ<K_^'F(AA!85 5OA,V2S:)K2Y6?H4XOE"02E$ EX9H<?=E>
M[&;';E.ZJCZI>T,%<411@B"(L )Z$35QXDM>&G>ZTKX"HJF :,H 1#.H@&@J
M()H*B&:#16;KV5D6D)==TM<.\':^^#&*6ULTH3%NQU\M\YD<41XC2RRC&"3!
M[Q2U1RDA<7;SXCW6N_FGA[8ZGMHY'=M)QC9M]J*S5X%LP*.8(M06#<91Z2K6
M#BOL17:;"1418_VLWSTS6E&LF]@KTF5!A2M:Y@22$ +O#=4:I"HQ3E>JK8P]
MC"O:O.D>^@D7RI<QS!:CCR$'T)\:R#<L^_"H08TH0</BM1"2)?H6:=[N>)BN
MI@O(93&%Z/H#)S=8?HV:LP?[CO7>O/!W9#V;%$N4D,:(E!JTIEL:5;YNP9\.
M7A6M=WEBALY>PI7(8OV1/5G8#(YQQ.O#<68(FXRTL$Q..%FFA=X>5%DO3!P<
MN)J(FF/_P/DR%.KO#OPI#P C>.?ZV_E$US1F?A!AODX'>#W%SWKBQ/"G'\7_
MA?>:X$2BI\$"4&D.F\H(V#9#:P!T5=>T_)+M8DKED*[QH XN/'G/D</O^;&O
M:PC3JY]&:%+LBA+:EOWKQL(Z*7['-I]4?"S*Q!T),,^E7*1@VIGHLYELYHS%
MR09A -%M/G;M961J!(C[*#_$ # J2%D!H,0U,J^Q\U^.^$<O6.]]Z]D^2 61
MN:V.),:V*IJM1KKO64\&=IV#@_O N[R,Y8.6(;!%^!JP69U$O[A0Y,&#UA%X
MV9KL.1C@DDB$/1Y:)9WQRJC0<205'N-8T2CZ>:>2,<>THGG8 B5I<2Z\<XT=
M3"$DC D^XQ6+PEW=&<^I15O\>IU0.U)1]$EU>6+3+I0_6#!P\#9"!C$%V@9'
M)%\Q78'4,=4=0M0*]I%4L=A+'SB+#__$<)"P<I'=(W7>#!/(0V"$A$>!9;D$
ML;7\>M'PA[>3@;T*FD;P4707*8*P 1;GQFM8-89*VB9H$S49YE"W-=DD#RM3
M>7C5IC.]N;T,6("O!K[%(P]U;5AXO7Q.0ZXP18 ^]% -=T?TR<%M4<,H-+!4
M[ GJAHPAB>CC"(,K_+(+Y2&6045/0QE:%J3$(=)P6"ON'&(( 7,"G*!WK<@7
M$)/#^EC/&.N&P6MX0^\4OT]UAQY0&[X-S6]L0@PK7K4X(7V4)W@S3RGR69S>
MZN/)ZZ:DT)5#8>X2=A!W+%%Y[*/U1[H_1]M<+34+7MQ0T27:OSTG]N.0$K2C
M'!E.[M*B'(CG!DHKD#S+ELCN.'F%Q)D/(;6H6/R[CA ^$O\.4S$$'?I/V^R)
M/O2?DC(3>Z6HSS:3K_SA\$8T 5H1QR"1?5Q#,UI494)-\./!'J^J'BI0)WP]
MZ=3X ON!QG#5-S%A?H^C:M13@CX%\H&-8J#A!9[7%"<P FUOZPXV#@TUMZ&&
M6(2K)+V6$'-04MY4=\4$(XU95<^=6*'KJ"BOX[F0MG_";BO<D\%D%X83X]0N
M8BWBK::T,J*^&*@S;XQ[COF&LMMJI%.VX! "B(K,'/VC1<]6LDIJ&$MD@R4J
M%-J*I#'E,?ISK(6A7*B[A^J*UC^<-4,3-_RVPV&/+C1CWL\B4Z,U%8&\J(]S
MXB(%6J] ^O%I+.2 (]*/%(]B6"?X7;AQT;O@XE=PSGN: *$E8#R5FE6/QS"R
MCPGF[VB@T=#LV7S=-;[P5[9NS2D\8?!J:&N$(XP[%+M@2F6=8HMM8HZ_">_K
MQE8%1EF0:M,#1ROLC>GH@M6E"^:!2T$?_WCX%-.<D][\!ZB9*[%;7\4DYE<<
ME>U, 1\,UQ--M?Y@>E/-<C4V@G,QSA3QA_/WLR_?;]"G'M3J];ITIN6T/V8@
MN[K8?NH\(R#OT##V^45[(:MTIL[]?BH4'7=B#4WDB$W[%(-83)'7A@6C9$,
M7:_]+4^""QH"IK]8X!'#4+Z%Y1L6:":HSZ \GCD>*NC0N>C!#7\_,VQV/0/%
M#+]_EOTET\<["O,)#R:P@0@GPHN[ 343QT[2TAN:VC^$G;>^(UCO1'KA1LQ@
MN3T<PFC_(9 BK@?\:H7 5 WYN+[1;]E."A/^=/-I\@E//F";K4NTL-!D8J9#
MXO66X/*H>D'8U5B<%)=+V3L1Q.,'%^35.6V4$MZITV#9P'? ,@2"9(>IP(XH
M%F^G-P/R$&$QO_^P_U2J2S?0TA2H$O06&9Y['T#HYT%/ONCW".<VG1G6G+'@
MQ_(3D"D@1%"@@$T3>2QH(4BOE\$']L;LD>XP"6>O$N:F^@3.6G#K%<GY$]X(
M[8!!%T[4O\[AT<SIE!#;Z,UFI!DIO?9"N17S0=QW">JF"P\PZ/A'D&CP"S#J
M=6<2Q/CXUN&01]X\>V7A#&WV.7<4U5>J7(FICAD^7"718J_1%]4JG$C";'Z1
MXF'^K-\6UV^W**]H;8T^DT/Z^(,RRNA3$K:5L3P7+[DU:2AXU!, Z7YIJ341
M;L.?^B0?88\]DT52F>G.[.F;PJY1^;E3*(:W0T\1((A*+RE\@GN%I3#GDK2-
MQCE" <Q$KWEPELY(2'*@$648DRZT>-OAFI-U-A>ZT>^L<*'-Y)7UZS$KJP<K
M2Q4:V.7*6KT5*\,.+B&>3A01NR?FFI1B$KD3<R3DM2&6#H?DDI0N(BFT.(X3
MDTPBAU8J0O]SB!+4+]F_9^A[8-R6-(" J$#3]SO0"?TD8A#C7&3IF$]71#OI
MS.QA$&>_G <_N>-!'9K;-76\#57L4)WDXT05-KKS&66'\\7DS: S<EVGUFBO
M8+JD36ZGXKEJDVF3^[5!H[F\Q[:_'4+&RQ['W(PAA;*L'U*I)'\;%=S'"$_[
M..JQXB;F,@X_%3-2G61)W-T;ZQ6MK$!P95-6O;TQ3L%;U%VI\]:T/ ^BRJE(
M/4S;52?OJH"J*J#:60%5JUX54%4%5%4!555 5=("*NH(^JB^)5XV+O>:J8JD
MBFL*AB>D/&)FU6G=GT2"UKQUK4@P"S!\*%.(M[R562E^9]HA!8E%DI[?^4\D
M,M,E*<6:-6_$5E9#:4RD+P;OEW4TGDF==W@)$S6U-?2?Z"VNZVWK)W=10I/C
MC28!J!+H02KCX:!UJP"0B%<IP=(/ELMNN[:\% $_1#5$HA!U)./9'C#>%]GO
M1Z:7/_#\58)Q(!\7))[IAO(Y7PB.8^D<HE%5^AUFYX>Z28ZINYG,FPOMX<QR
M1-M'ROG<=A-%XQ]=9/' +J8L2W. (E7*=N.=A-[4J<SK%+M%)RYR#0OSEO;5
MM#7&OB!BPJP[QWMR=$U7>4,[G7K@^><I4UP%0B)U[QXSK$HP(FF?/*</?H73
MM#P,U>/E'GXH4T8C6:(72M61.0<U?ZW:F"[OW&&ZD6JS1&V_7!)]E$D*<D\4
MV!048GCM3)MS&EJ6MPHC/2K[3@KQ32H%;&U#M) #/?!DN9-0!WD_(&IZ="=!
MZ4ET@^\Y//=(1DL]UQ]#XB%B1O9((B(J3)["C"JB^.7_A'"7Y0/7=P\^@*(L
M&_!<'34DKX5Z)7,?KWBQMO@Y/*WPB$[D/@9CM=C>$E,A;3(%9A;B"O)$Y-!3
M7&3)R6BZX<&K_/G#Y/Q2!EF>AE?2*P83/R70+!P)X\W[J&$]@.9P_D7%: (V
MFL%NQXM2[!(I:6AJG_B9)'2)6\**W:Q+G(A4C'63WN&'0F+:N44ZP"5'E#;
MDR;NUH$R3 JCO<4UEXMK) ?\X&*9B71H@(]=:YIK(Z[=@65WN[^$"&JWP-R-
MF%>-+"0"\^]GW?5APSRFLAP^Y2&(<WYJ%,Y0*")"D/CUFH+_?1^LH8^+R)!6
MLG9FZY-,Y&8L17/@O_\FN79-<BTLN[B>E;IV5P<L^#J\B:M/?;&K0<4_>?!/
M\T#XIYSLPR_X2L<J%2T=)BW52TA+>Q6[(6F9XPOB6278@&-\5?LXEW6<KSJ*
MPTHK.%(UE<I9O/@JJW&6NW1=5D\1FZ\XQ1-5,M^#"-$[$SU^U;7L][&*YK"9
M*[-]</;Q;T4P9';[):'!84QR7J_=S"%''LB&WW)^M1PG:^I<KQ.?/E<$-<0:
M.TM'4"+A7P92.SI6B,NBW[2H(@=6:'9K_7[_H'AA2S4>;45;>0GE?M51&)ZG
M\JJC.*S*2RB5E_# ;T+?:<RT*-L&?(0/NXU&E2.(N:M7M8]S6<?YJGT>U@'8
M6;NY!"M:U)V[UBQ: B/-X67!/* MH%R&Y4R6E?DK1QA426.++/MD.W04D]V]
MSJ:1C]@RW#_$B0_Y@7^GS*7;,=>1M\%Y$WUDK;RL-9N=6K?9WXM#>")QD .C
MWKBZX\1@Q1ZIM]T>U ;]7AFIM\RNQ8EKU*&F?5 ^R21+-AXC'OX2PA2'+#A"
M;9HZ"ELRL95ZWDG2+0XR8'/=_,4<V8S#3?/\<"[7AB['7*1T4VL9)".$!YXQ
M@MMKU?J-]L&$;RN6.0*6Z>=B$.R+93K-9JW1V8^!6]UXE)&92_2JHPBBG\JK
MCN*P*K>DM&Z)*%8Z[5#?HL72 HM%LSRLQ3HL4VOUQ)-LK8V!13<)O@@"6XK!
M9 ^_# :U=GL9C6\?ME7KA-V1TV*2SL88M7MEDD$/')!VYV"8I') CDA2G(1-
M>RJO.HK#*K,#<H(I5]>K4#:JO*L#3>6I7G5 AW4 QM:IAF,H,^$8(RQ;>&4E
MJ<M9-<%-"W,Z66K4),;0.B2U+3);ZA>=QL'XBQ5?'!]?9"E8*X OFA<E*5TK
M((Y2W;3L_*:E4NY'+<3BVBKEI=P%!656[X<CQBK..#[.B"M0R$N];\49C8O!
MX=PF<@7_JX#6_)52V/Q&(U% ZGVU4=H:8O6&0V]?>;;-S-'\T59-AQ^+,S0U
M^J>ATC^3@*/[A?:D/TY0ZM!>8ZZZ.!A%G(Q^$BT@0M2'4-(2%W[D[P'!)[MB
MIPAOVK4XY+QF&0:"C8J6 .QM-,'$4L5&D/F9S5Y4W: .#_Q[-W@5[PBM?+-,
MYJKV7'9D"'>6P#>OF(^K,'4TP>BZ;FD(X;PXQ=@)P6"B+(&^5D5;:B6T \HS
M-1"W;,6PL(V#8JW<$)N-#3;B^P$2T,"%UI1G9A((/RY$U::ZJ3LP+5X2P7O5
M\46N[\4KFB: C(>/8,1CA:W>?^,3S8)7I3D+ZLBN1HXD3!ES/&++\1!LW&/4
M%9WZL8\$M1%.N6<#26+#RF>;\0QLWL8RZ,@-Y#1T=)7(Y!M[TT<6T1M\'.:Y
M"^6+J:!^%6T>8&P'3 ,GS&1._(.Q34XLTY@G+$@7T\3.%%>JJ6JP\\H3O K8
MT!J/]1'CXR:.L!&]QVZAF^78@'X\' )G,;,MS1NYM,NT#I7/VY_FS ;3R082
M%(V%J>G+3)W;L'L!"PO(_:5=7&#YR :%7EFUU]C*?KIG#@C!T02QZ-D+,ZP9
M,I+H!<I-IJBEM(1'?YS6C-P7$AVAG0$Z==QUILRNY[=WD1_9'2VT.R/<'1*5
M@K\U;,VDFR3#-*[*28Y2OXF-]?V%\H ]I_A;#D/OET@VK>FY>G"R:ZA1R!H[
MJA%7)GIX_=.06Z$]226JCLS^#!R#T#Y03SG;FEIHR%%;&Q)2@5PBN\5A(>F5
M54 %#DE"7_!>/0_HT=!);]6ZN]G+U-R\5\\#-#*O1;2:\8LH3N+75C0H+Y'\
M+TZ^5RW,JQ;F96AAWJA:F%<MS!=()_**JH7Y4;4P+\[QWD%#<T2=T%W:VZ&I
MP?Z[8!7Q*'FB9[/<]'1MI_$B3(T4#<\+L7CVYHHA#KH2.<;3\,4LST48>&I"
M;K!G$!K@?(T8TZB, TUIT#WZU%&>0 Z I%!4NBF*1J31"7.\I__@%1-(([\3
MMSN_4(8F$+RK3TDTX>62,@;O3E'YWR-_Q^>R0SE^M3 1O)>B:6 P71V-@''
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
M^4-W< KI1/NMW+\[9N/5K/K,?!5_WDRIX]MG']N-BVYW2</_0N>C*4_SU,Q
M"0P)IQ?3OWXWIT<\$[ ,]M/P&>:XSJ[3OVBUD\YNC?@X$1SZQXGN+ BZF>7H
MN%E.:O(&T8V)-Y9)=V4CS[81]I]:W[QA.@[)=Y1P#OPEQ*Z":8(F;P,PL3R'
MO=KJC)YQYB9(7Q"BBFV!U./W1>I\*L>$ 5YT#79%W-V!B0;&%BA\',H!0B%A
MB7E NFK QS@*RGN4U9:)HTC)3\.-8(^L:? 9SS3C5*$:BCJ;&6"$\0VQL96/
MC8--P%O!A@H&OA@VW/8<9.J1Q6\5U2>P50EW7T'+$)^NQ>@4TWH%+8EO8$YT
M!OC;*ZY<N*88_.8H8+'"X9#]"2?@\D0G93@#'F>&XK!GW*.3(5PZ>1U;#XYM
M.$#<,?3R\-#&'K]1))96GE3SIV* Y 15.]&!DO%OO+%]]E0;WL\8$NK(@"/$
MO#$4#GPP<$%T#?ML.!/8X8EE "42<:V1'9RN+ .OCVU8T'^YQ,%!Q74QC"%$
M)<P)6$KQ7)W_#AAHYMFC"? */6"!7PS"W@A90;@R^$LGVI/VT(5O@@C^@X7
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
MCX&8(6',X=0QD8$/5%-&JC.1H^((_)*%&_[GG$G%MVC)^S;Q.UB-X6F<@L;
M[;8C&CYYADL24BSR7#ZC:*O,1+*%\0D)F>?;LL-4)LL@(?TFJB#]L\)/\0C3
MJ<E0X$0 T7%+Y)Z12:N!(7)#MND781UDS8OLK[)(@HA2+*-%0DQXNK:86<1F
M"844,E V$)'A\3X/)MECY.N%8A7&G/=MFW."\?5TRK=*;1OV8LG-Y*H.NS>0
M[J N;;0JH%T3;ZQ0C]BXTC'3HR^,](3=].T^$0)EBOX!<B@NRSAA9M[.%+I;
M>#S"#1=\^*H;!C:L( ]WYMEXN*[TD39>)(AB=V)YSZG:SIB@X,0LDO3#5)US
MK?#$<J "$'JPX% JA6\ \IEL05^TE6$7%2<,2LHV@[9_V]'0%G'1U1)O4%\1
M)>Z>-^IAX4>VNM]!]MY7#B3*9$NG' 1D9C]"8JC"Q#P*6=^B^GD$8S76P\@8
MBFW7ZIWFLE!=4I91/EMR.+84GT1,I,Y0**^WPP>-^IF M^!F>"0,)\K7!6$Z
M4J&C6$P(H \:*:%A=T Y<2G8AF&-,'DRGH!$!X6,VG0%;OHV+)FXLPE%A 5M
MY[4PM41SMOA-_6YQ9%F-YN10B4_X>P2'_FZY_V;P&A%>S<AWO16WJTBRQ >>
MZ4=PM2AUCV 2?F*M4&U+["I<<<0N]YL5<QD>&A:E.>CO5X)09-HY^.VV^HP_
MP9L?9&CA@@<VY@99.SD>;$%'R04IW0S21_B[QEF$D%N10T;9]$'S; Q;G'VL
M7_1:2TE7U->A OLM#.Q7)"QALEGT?PO \\V^Q7%[6\R>)N$F=S+@)E>8QA6F
M<85I7&$:EQ'3>(_WDCX\J\(3C1UO"@_ .QQY>:**% X_.+K[CE ?]M,A,$>\
MV'C;CPQ,X23+S)C5.+(X?H4C>V HGSF,^/N3/^C34AUROJ"2:UY6RH'W#[Q9
M.*(F_/</X0L'P)JY@VL>.?YNQ9D59^Z",X<\.%4Q9L68%6.6B3&O96;3'68V
M5?QY0.125FAS6>SI[)":*@3[,ASS';-%3L!^C[J"LS]".'L1 @K#,M06PV6-
MP8'B-98 AS4)?&[0BL$6;PQ2UJ=NF7M_&QPXKX_(FG38:G9K[4:['-#DAT2=
M&\/@[Y548])38DCUQ\,G4%>[)E@9@1+^KK2NR;C.F.-UT>^6@X(K</TX117=
MM0'-Z;/(JXLDEN.5CI\I7JFMW<B"5KKBLD?=Q0NH+WZ1*64PR=0D9VAJ?O%F
MZ>K-_LML2U.=R9*D."^'F*CH.4=Z;N^>GK=1C,Y&9)U%.9:=VLOHR953*<KC
MUBK=EYWTWB4)BSATJHSP0ECO%8<G%$[.\ \T8Q)UIU?K]O;HG;VO:#!W?16'
M$;8.Y&EGVD<2Z%8*:)UWUBU)?*'RSM(JHBLJKF3:KP*L]U>_P++23+N1"CGA
MWFWI8]WP8_9L,HBO\? Y%O*Z(KQ5-JCBP';^_>R\-,9H1;0Y$FT6O,)=11C7
MDF[E6IV*:Y7N8@Q+=0]2EYU4'\-!*P[ULR!UF-,U6Z?;K_7:^^H-U3BRCF<E
MH.M$@FW']3<O5!7N]+*M==%>AE,H#R57/EYU U=V 9$2AJ.Z@:O<P(.@Y^;N
MZ;FZ@:O<Q.H&[D!D1=(-7#LN_21C?Y@";N :K78-)EW=P!T:#2:18%S&R+HN
M/8=\ ]>Z:/2.0A&=D'>VCQNXC2J&JE!F_$P3E5].S='V=<N7+&:ZV"%J7W)F
M!>WN1GT6SR@EX(!DG9JE\]U!706N4['=HJ*B:4F_<@!SNB=L'*@ON*BR6J"R
M-,M#S*>R:]?54TV200FM  [DIK#=[-4Z_7W=%+:JF\)BE68_;4/+ [TIC&GI
M5!Y*KGS19)TH&CHAT%^E$P]6)Z;KF;L3X7(=$- V.K'5Z(!.;)58DAP2 Y2
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
MLK17W3" :X,SY.'.Q7]G1KLJ R]71)@G$<9A:VVA/W9.A(-2T&#EG6R@3U[
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
MUV2]=5DQ;NZ,6^9;F"3&O=P3XP[VSK@5^6]*_JOO1_ZOR#H["M"5G<O?JXH
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
MS>>$Y37SOYW%_6\W9 ]?18;=R7C>LNPZ3;V;Y_'=E&S_N]# ?>^!5O+D*I]
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
M>0MO,$Z-I=VPLK[ &3<U9LW:/6T>E39OGCQMKI8P]NJO;X_:/W9=18RJ *:
MC9I8XC&@[R/C5@2< [>2-A9X9,+1)DN7DCB)94A6E+#H.98N4L85&$=IS!I5
M CZW)A(QFAT[ +YC <*4(#Z_QME5#P4[0X:X+!0DVL>\T3XY$(=A:/LD+I_*
M1^@25I=$H_D9I9$%_I5\(%MV5I0L*4J@B-:YRDI(4*G8V3/M-J9-[=S*A&_
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
M:MU\O$H=-KQJ3#P#\"<#T/G% ,A$T;IK5.F6G3"!:8P5:7:.3L(DPC.5---
MK.AIPCG@-BIU!L6)%)&95?)=X2*SXH$!RX_6^1Q737F!XR35#R(XD:UEW>I]
M\7F/>GB%3IC_.7KM,JQ,YR<6Y-]7@?O2=Y6Q+BS3>072U])-I4!Y!3*$7'@-
MXE?,7U JAWO;T#Q=E;]"X%*#MR]= \[++9@DC&*B;>Q:+V\FHHFK<AO*VTFB
M5!+K$:-ST/5ZS996\:9 W<,X:-7T6.>VW+'1-D?GRB)6"RWM]!*RA#-DY=ED
M&WL8_=O9X(,ZNN"82#\"NVC>G#O)MQN;G*L/GN/J#@?6;SOOKK%ZR##M?6G>
M&JD52(KD0I*T;137!42_+U +5S@;?;%[#V?4LMIZO_R0_IG'^IM8GB/7WF2=
M[3QQJ&\UI2Q:*^EHU;*'S3=/&B/K?NS^P>3PJZ>"N[KQ@8E\C<7/9'LFVS/9
M?A+9;GZA]-_GW(\\E3G??F>P_+3P?NDAY*[_6Q/=0$^>9/?C_'_JM]'/,IYE
M_ 8R G8./B=9UC8^=<>>.>P>]<R]4:_[47\D7IH='AUZH[6Q*#1E<G%]4+_J
M@.'1R>GQE31<H;]TWW!!+6KZRS>FU/P#_K]02P$"% ,4    " #Y<FM4;KU.
M63L2  #C[P  $               @ $     87!T+3(P,C$Q,C,Q+GAS9%!+
M 0(4 Q0    ( /ER:U1A*X 2,@T  .JX   4              "  6D2  !A
M<'0M,C R,3$R,S%?8V%L+GAM;%!+ 0(4 Q0    ( /ER:U1L[,SZ,DD  )-G
M!@ 4              "  <T?  !A<'0M,C R,3$R,S%?9&5F+GAM;%!+ 0(4
M Q0    ( /ER:U0#L^?N<%\  $<V!0 4              "  3%I  !A<'0M
M,C R,3$R,S%?;&%B+GAM;%!+ 0(4 Q0    ( /ER:U0D;--PL$P  (KW!@ 4
M              "  =/(  !A<'0M,C R,3$R,S%?<')E+GAM;%!+ 0(4 Q0
M   ( /ER:U0J7]W<<V$! .-R#@ 3              "  ;45 0!A<'0R,#(Q
M,3(S,5\Q,&LN:'1M4$L! A0#%     @ ^7)K5/>190^B @  61    T
M         ( !67<" &5X7S,T-# P,BYH=&U02P$"% ,4    " #Y<FM4,FY@
M2X4#  !9"P  #0              @ $F>@( 97A?,S0T,# S+FAT;5!+ 0(4
M Q0    ( /ER:U2P9S %>0@  %HX   -              "  =9] @!E>%\S
M-#0P,#0N:'1M4$L! A0#%     @ ^7)K5*@L)1-#!0  V!X   T
M     ( !>H8" &5X7S,T-# P-BYH=&U02P$"% ,4    " #Y<FM4/_QROT8%
M  #''P  #0              @ 'HBP( 97A?,S0T,# W+FAT;5!+!08
.."P + *X"  !9D0(    !

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